[dpdk-dev] [PATCH v2] net/tap: fix dev name look-up
Pascal Mazon
pascal.mazon at 6wind.com
Mon Mar 6 15:57:50 CET 2017
On Mon, 6 Mar 2017 14:27:18 +0000
Ferruh Yigit <ferruh.yigit at intel.com> wrote:
> On 3/6/2017 1:51 PM, Pascal Mazon wrote:
> > Store the device name in dev->data->name, to have symmetrical
> > behavior between rte_pmd_tap_probe(name) and
> > rte_pmd_tap_remove(name).
> >
> > The netdevice name (linux interface name) is stored in the name
> > field of struct pmd_internals.
>
> +1 for this.
>
> >
> > There's no need to allocate an rte_eth_dev_data, as it is done in
> > rte_eth_dev_allocate()/rte_eth_dev_data_alloc().
>
> Allocating rte_eth_dev_data, although rte_eth_dev_allocate() does
> already, common practice for virtual devices, for a reason.
>
> rte_eth_dev_allocate() allocates device data from a shared memory, so
> that multiple DPDK processes can access same device data, this may
> make sense for physical devices, since there is a single physical
> resource.
>
> But for virtual devices, each DPDK process may want to have
> independent instance of the virtual device, that is why PMD itself
> allocates data and overwrites with existing dev->data.
>
> Also this may lead unexpected results for some multi process use
> cases, like secondary process virtual device corrupt primary process
> physical device data.
>
> I believe it is good to keep this as it is.
>
I see your point.
I'll send a v3 with just the correct "name" used for allocation.
And I'll move the snprintf(data->name) closer, to insist it must use the
same name as in allocation.
Regards,
Pascal
> >
> > Signed-off-by: Pascal Mazon <pascal.mazon at 6wind.com>
> <...>
More information about the dev
mailing list