[dpdk-dev] [PATCH v2] kni: use kni_ethtool_ops only with unknown drivers

Igor Ryzhov iryzhov at nfware.com
Sat Jan 5 17:53:34 CET 2019


Hi Ferruh,

Thank you for all your comments.

The only real purpose of the patch is to support .get_link for all KNI
interfaces, not just for those using igb or ixgbe.
So I propose to remove ethtool support at all with your patch, and after
that, I will add .get_link support again.

Yes, I understand that it doesn't implement real link status support, it
just relies on the application, that should set link status using sysfs.

Regarding the ethtool support in a driver-independent way – the idea is to
use the same req/resp queues
which are used for some net_device_ops like .ndo_change_mtu or
.ndo_set_mac_address.
I want to add more types of requests to rte_kni_req_id enum and implement
them.
It's not an urgent task, so I don't know yet when I'll find time to do it.

Best regards,
Igor

On Tue, Dec 18, 2018 at 9:13 PM Ferruh Yigit <ferruh.yigit at intel.com> wrote:

> On 12/3/2018 2:06 PM, Igor Ryzhov wrote:
> > Hi Ferruh,
> >
> > What about the patch?
> >
> > I also support dropping ethtool for ixgbe and i40e, but to save generic
> ethtool_ops
> > with .get_link implementation, because it's an essential function that
> works
> > correctly
> > after proper implementation of carrier status that was merged into 18.11.
> >
> > Also, other ethtool operations may be implemented in a
> driver-independent way using
> > the same concept as for netdev_ops.
>
> "carrier status" relies on the sample app support also relies on kni
> net_device
> sysfs interface.
> It is good target to have ethtool support in a driver-independent way,
> please
> share more details and lets discuss them.
>
> >
> > On Mon, Dec 3, 2018 at 4:09 PM Ferruh Yigit <ferruh.yigit at intel.com
> > <mailto:ferruh.yigit at intel.com>> wrote:
> >
> >     On 11/30/2018 11:38 PM, Stephen Hemminger wrote:
> >     > On Fri, 30 Nov 2018 22:47:50 +0300
> >     > Igor Ryzhov <iryzhov at nfware.com <mailto:iryzhov at nfware.com>>
> wrote:
> >     >
> >     >> Current implementation of kni_ethtool_ops just uses corresponding
> >     >> ethtool_ops function of underlying driver for all functions
> except for
> >     >> .get_link. This commit sets kni->net_dev->ethtool_ops directly to
> the
> >     >> ethtool_ops of the corresponding driver.
> >     >>
> >     >> For unknown drivers (all but ixgbe and i40e) we still use
> >     >> kni_ethtool_ops with implemented .get_link function.
> >     >>
> >     >> Signed-off-by: Igor Ryzhov <iryzhov at nfware.com <mailto:
> iryzhov at nfware.com>>
> >     >
> >     > Why does KNI still support ethtool which:
> >     >   1. Only works on a subset of devices
> >     >   2. Requires a 3rd implmentation of the HW device (Linux, DPDK,
> and KNI)
> >
> >     +1 to drop ethtool support, last time we tried concern was anybody
> may be using
> >     it, perhaps we can try again.
> >
> >     >
> >     > Then again why does KNI exist at all? What is missing from virtio
> user which
> >     > is faster anyway.
> >     >
> >
>
>


More information about the dev mailing list