[dpdk-dev] [PATCH 02/20] librte_ether: add fields from rte_pci_driver to rte_eth_dev_data
Bruce Richardson
bruce.richardson at intel.com
Wed Sep 30 11:56:04 CEST 2015
On Tue, Sep 29, 2015 at 03:08:12PM -0400, Neil Horman wrote:
> On Mon, Sep 28, 2015 at 02:03:20PM +0100, Bernard Iremonger wrote:
> > add dev_flags to rte_eth_dev_data, add macros for dev_flags.
> > add kdrv to rte_eth_dev_data.
> > add numa_node to rte_eth_dev_data.
> > add drv_name to rte_eth_dev_data.
> > use dev_type to distinguish between vdev's and pdev's.
> > remove pci_dev branches.
> >
> > Signed-off-by: Bernard Iremonger <bernard.iremonger at intel.com>
> > ---
> > lib/librte_ether/rte_ethdev.c | 53 ++++++++++++++++++++++++-------------------
> > lib/librte_ether/rte_ethdev.h | 15 ++++++++++++
> > 2 files changed, 45 insertions(+), 23 deletions(-)
> >
<snip>
> > +++ b/lib/librte_ether/rte_ethdev.h
> > @@ -1635,8 +1635,23 @@ struct rte_eth_dev_data {
> > all_multicast : 1, /**< RX all multicast mode ON(1) / OFF(0). */
> > dev_started : 1, /**< Device state: STARTED(1) / STOPPED(0). */
> > lro : 1; /**< RX LRO is ON(1) / OFF(0) */
> > + uint32_t dev_flags; /**< Flags controlling handling of device. */
> > + enum rte_kernel_driver kdrv; /**< Kernel driver passthrough */
> Why add this here? The ennumerated driver types are all variants on PCI bus
> types. Not sure why the ethernet interface needs to know this info
>
> > + int numa_node;
> Ditto, this seems like information that is only relevant if the device is on a
> physical bus (i.e. virual devices are likely to not have a numa node)
>
Actually, I disagree. For some virtual devices they will have a numa node. For
ring or other virtual PMDs the numa node will be the node on which the ring /
mempool etc. memory is allocated on, and can be of relevance.
/Bruce
More information about the dev
mailing list