[dpdk-dev] [PATCH 1/3] eal/drivers: prefix driver REGISTER macros with EAL

Neil Horman nhorman at tuxdriver.com
Fri Oct 7 16:18:18 CEST 2016


On Fri, Oct 07, 2016 at 03:51:44PM +0200, Thomas Monjalon wrote:
> 2016-10-07 19:11, Shreyansh Jain:
> > --- a/mk/internal/rte.compile-pre.mk
> > +++ b/mk/internal/rte.compile-pre.mk
> > @@ -87,7 +87,7 @@ endif
> >   PMDINFO_GEN = $(RTE_SDK_BIN)/app/dpdk-pmdinfogen $@ $@.pmd.c
> >   PMDINFO_CC = $(CC) $(CPPFLAGS) $(CFLAGS) -c -o $@.pmd.o $@.pmd.c
> >   PMDINFO_LD = $(CROSS)ld $(LDFLAGS) -r -o $@.o $@.pmd.o $@
> > -PMDINFO_TO_O = if grep -q 'DRIVER_REGISTER_.*(.*)' $<; then \
> > +PMDINFO_TO_O = if grep 'EAL_REGISTER_.*(.*)' $<; then \
> >          echo "$(if $V,$(PMDINFO_GEN),  PMDINFO $@.pmd.c)" && \
> >          $(PMDINFO_GEN) && \
> >          echo "$(if $V,$(PMDINFO_CC),  CC $@.pmd.o)" && \
> > 
> > --->8---
> >    CC eal_pci_vfio.o
> >    PMDINFO eal_pci_vfio.o.pmd.c
> > /bin/sh: 1: 
> > /home/shreyansh/build/DPDK/02_dpdk/x86_64-native-linuxapp-gcc/app/dpdk-pmdinfogen: 
> > not found
> > /home/shreyansh/build/DPDK/02_dpdk/mk/internal/rte.compile-pre.mk:138: 
> > recipe for target 'eal_pci_vfio.o' failed
> > --->8---
> > 
> > I don't think PMDINFO should be running on eal_pci_vfio file. Isn't it? 
> 
> Every files are scanned for the pattern.
> 
> > Is it because EAL_REGISTER_* is matching EAL_REGISTER_TAILQ like macro 
> > as well?
> 
> Probably.
> That's another argument in favor of good prefixes.
> I think you should use RTE_DRIVER_REGISTER_ or better, RTE_PMD_REGISTER_
Thats what we had, about 4 changes to this macro ago, and yes, that made alot
more sense, to grep on a more complete version of the macro name to ensure a
unique match.  You might just look for the regex
EAL_REGISTER_VDEV|EAL_REGISTER_PCI with grep -E

Neil



> > 
> > I am not very well versed with how PMDINFO is linking with the build 
> > system so any hints/insight into this would be really helpful.
> > 
> > One I get more clarity on this, I will push a new version of this patch.
> 
> Thanks
> 


More information about the dev mailing list