> > If it's a public header then maybe it's missing a @file? > > > My 2c on this in general... > > The use of public vs private headers is not always clear, sadly, in DPDK, > for historical reasons. With the make builds, libraries picked up headers > from other libraries via the "include" folder for all of DPDK, meaning that > if a particular header was internal only but used by multiple other libs, > it was placed in "include" for simplicity, rather than having each library > using it having to have separate "-I/path/to/header" cflags specified. > With the switch to meson, this common folder use is no longer be the case, > but because of the old way of doing things it may be that in the transition > some private headers were inadvertently kept as public (and possibly vice > versa, though that is more likely to be spotted by now). > > /Bruce
Here is why rte_ethdev_pci.h should be considered private to DPDK: * rte_eth_copy_pci_info - intended for device init, that is, driver job * eth_dev_pci_specific_init - wrapper for the above * rte_eth_dev_pci_allocate - @internal, deals with private data * rte_eth_dev_pci_generic_probe - @internal, deals with private data * rte_eth_dev_pci_generic_remove - @internal