[dpdk-dev] [PATCH v7 00/17] Generic devargs parsing

Gaëtan Rivet gaetan.rivet at 6wind.com
Sun Jul 9 13:29:53 CEST 2017


On Sun, Jul 09, 2017 at 07:16:45AM -0400, Jan Blunck wrote:
> On Sun, Jul 9, 2017 at 6:17 AM, Thomas Monjalon <thomas at monjalon.net> wrote:
> > 09/07/2017 10:37, Jan Blunck:
> >> On Sat, Jul 8, 2017 at 6:28 PM, Thomas Monjalon <thomas at monjalon.net> wrote:
> >> > 07/07/2017 02:04, Gaetan Rivet:
> >> >> In this patchset, the representation of devices in rte_devargs is made generic
> >> >> to remove some dependencies of the EAL on specific buses implementations.
> >> >> Following the device types being characterized by their bus, the DEVTYPE
> >> >> flags are updated not to reference virtual / PCI devices anymore.
> >> > [...]
> >> >> Gaetan Rivet (16):
> >> >>   net/bonding: properly reference PCI header
> >> >>   net/bnxt: properly reference PCI header
> >> >>   net/mlx5: properly reference PCI header
> >> >>   net/e1000: properly reference PCI header
> >> >>   net/ixgbe: properly reference PCI header
> >> >>   net/sfc: properly reference PCI header
> >> >>   app/testpmd: properly reference PCI header
> >> >>   test: properly reference PCI header
> >> >>   dev: device kernel module is a device attribute
> >> >>   bus: introduce bus scan policies
> >> >>   devargs: parse bus policies
> >> >>   devargs: generic device representation
> >> >>   net/virtio: do not reference device type
> >> >>   devargs: generic device types
> >> >>   devargs: introduce cleaner parsing helper
> >> >>   eal: change whitelist / blacklist command line doc
> >> >>
> >> >> Thomas Monjalon (1):
> >> >>   examples/ethtool: properly reference PCI header
> >> >
> >> > Series applied, except last patch (17), as explained before. Thanks
> >> >
> >>
> >> I wonder why you complain about not having enough reviewers if you
> >> anyway ignoring their feedback!
> >
> > I am not ignoring your feedback at all.
> > There are 2 things in this series:
> >         1/ decouple devargs and PCI/vdev
> >         2/ couple devargs policies to rte_bus
> > I agree that we should not have policies in rte_bus (2).
> > However it is the only patches we have for now to achieve (1),
> > which is a required step to move PCI and vdev as real bus drivers.
> 
> (1) is easy to achieve. I've explained multiple times that devargs shoudl be:
> - bus name
> - device name
> - device arguments
> 
> Somehow I expected that giving suggestions and review comments will
> lead to people actively working on this picking up the ideas. I guess
> I was mistaken. I'll save my breath and fix it myself.
> 
> 

The goal is to restrict the devargs to this trifecta, eventually.
In the meantime however, the way things have been designed previously
forces having the "devtype" (now limited to bus scan policy) coupled
with it.

It is not possible to remove it without changing the API / usage of EAL
parameters.

This functionality was not added to other buses. The latent default
whitelist mode was simply made explicit. This does not preclude changing
it next release. In any case, it makes the issue obvious and allows
comments from reviewer to point out those issue clearly.

> > As explained in the following email, I prefer progressing on (1)
> > and rework (2) in 17.11:
> >         http://dpdk.org/ml/archives/dev/2017-July/070203.html
> > What do you think of my proposal, adding a callback in probe?
> >
> >> I pointed out multiple times that parsing a device name to deduce the
> >> bus is not the right thing to do.
> >
> > Yes, so we need to change the parameter syntax to make the bus name
> > explicit and mandatory. We need a deprecation notice.
> >
> >> This series also tightly couples rte_devargs to rte_bus.
> >> It adds hidden functionality to have
> >> blacklist/whitelist mode for all busses and even sticks that
> >> functionality on the wrong object (devargs).
> >
> > Yes, as said above, we must rework it in 17.11.
> >

-- 
Gaëtan Rivet
6WIND


More information about the dev mailing list