2016-03-01 14:37, Stephen Hemminger:
> On Tue,  1 Mar 2016 13:36:39 +0800
> Wang Xiao W <xiao.w.wang at intel.com> wrote:
> > +static int
> > +fm10k_check_ftag(struct rte_devargs *devargs)
> > +{
> > +   if (devargs == NULL)
> > +           return 0;
> > +
> > +   if (strstr(devargs->args, "enable_ftag=1") == NULL)
> > +           return 0;
> > +
> > +   return 1;
> > +}
> 
> It is good to see the DPDK keeping up with the leading edge of hardware
> support.
> 
> My issue is that devargs are the Linux module parameters method of
> configuration in the DPDK world.  They are an API only a developer
> would love..
> 
>  1. It has to be done at boot

For vdev it can be done later.
The devargs can be generalized in the driver model to provide a
configuration interface per device.

>  2. Applications have to rewrite (or expect customer) to pass args

Like said above, if the devargs are correctly implemented, there will
be some API to pass them.

>  3. Can't be changed at runtime

Same point as 1.

>  4. Can't be selected on per device basis.

No. The devargs are args per device.
For PCI, they are currently passed in the whitelist.

> Please find a better way.

Another way would be to extend the configuration structures.
I think it's better to re-think the device configuration and the command line
using some devargs and more functions, ops and structs to configure the really
generic stuff.

This devargs goes in the direction of a flexible configuration, so I'd vote +1.

Reply via email to