[PATCH net] hv_netvsc: preserve hw_features on mtu/channels/ringparam changes

Haiyang Zhang haiyangz at microsoft.com
Tue Nov 14 21:48:50 UTC 2017



> -----Original Message-----
> From: Vitaly Kuznetsov [mailto:vkuznets at redhat.com]
> Sent: Tuesday, November 14, 2017 11:58 AM
> To: Stephen Hemminger <stephen at networkplumber.org>
> Cc: netdev at vger.kernel.org; linux-kernel at vger.kernel.org;
> devel at linuxdriverproject.org; KY Srinivasan <kys at microsoft.com>; Haiyang
> Zhang <haiyangz at microsoft.com>; Stephen Hemminger
> <sthemmin at microsoft.com>; Mohammed Gamal <mmorsy at redhat.com>
> Subject: Re: [PATCH net] hv_netvsc: preserve hw_features on
> mtu/channels/ringparam changes
> 
> Stephen Hemminger <stephen at networkplumber.org> writes:
> 
> > On Tue, 14 Nov 2017 16:22:05 +0100
> > Vitaly Kuznetsov <vkuznets at redhat.com> wrote:
> >
> > Yes, this looks like a real issue.
> >
> >> +	/* Query hardware capabilities if we're called from netvsc_probe() */
> >> +	if (!net->hw_features) {
> >> +		ret = rndis_netdev_set_hwcaps(net_device, rndis_device);
> >> +		if (ret != 0)
> >> +			goto err_dev_remv;
> >> +	}
> >> +
> >
> > Rather than conditional behavior in rndis_filter_device_add, it would
> > be cleaner to make the call to get hardware capabilities there.
> >
> > Please respin and make the query of host a separate function.
> 
> You mean call rndis_netdev_set_hwcaps() from netvsc_probe()? Will do.
> 
> One question though: in case we'll be avoiding
> rndis_filter_set_offload_params() call on mtu/channels/ringparam changes -
> - can we trust the host to preserve what was there before the RNDIS reset?
> In case not we'll have to untangle what is
> rndis_netdev_set_hwcaps() in my patch splitting it into two: hw_features
> setup and rndis_filter_set_offload_params() and leaving the later in
> rndis_filter_device_add().

After remove/re-add RNDIS dev, you should pass the parameters to the host
again.

Thanks,
- Haiyang


More information about the devel mailing list