[dpdk-dev] [RFC PATCH 0/6] remove pci driver from vdevs

Iremonger, Bernard bernard.iremonger at intel.com
Tue Sep 1 15:38:02 CEST 2015


Hi Neil, Thomas,

<snip>

> > You didn't remove the relationship of the ethdev to the pci driver
> > though, which is really the problem, An ethdev may reside on any
> > number of bus types (pci/usb/vmbus/virt/none). 
 
<snip>

> >  Whats really needed is a way to associate an ethdev with an arbitrary bus

<snip>

> > > Please see email below from 6Wind
> > >
> > > http://dpdk.org/ml/archives/dev/2015-July/022107.html
> > >
> > I think you misread that.  I think all Thomas is asking for (correct
> > me if I'm wrong Thomas), is for someone to start refactoring the
> > ethdev registration code so that we can have a single init path
> > without the need for wierd typing and differentiation at init time.

<snip >

> >  We just need to
> > start thinking about how to make bus registration independent of
> > ethernet device registration, and while your patch series sort of
> > eliminates some of that, its really not a proper refactoring of the
> > sort I think Thomas is asking for.

I am just trying to distill what the actual requirement is from the above discussion.

(1) Remove relationship of the ethdev to the pci driver.
(2) Refactor ethdev registration code so that there is a single init  path.
(3) Make bus registration independent of ethdev registration.
(4) Change all (17) PMD's to use the  modified structures.

The rte_eal_driver_registration() code is  in librte_eal,  untouched as yet by this patch set.

The rte_eth_driver_registration() code is in librte_ether.
Should the pci fields be removed from the struct rte_eth_dev{} and struct eth_driver{},
and put somewhere else or replaced with a union of bus  types and drivers?

Regards,

Bernard.




More information about the dev mailing list