All of lore.kernel.org
 help / color / mirror / Atom feed
From: Radu Rendec <rrendec@arista.com>
To: "Michael S. Tsirkin" <mst@redhat.com>
Cc: virtualization@lists.linux-foundation.org,
	netdev@vger.kernel.org, linux-kernel@vger.kernel.org,
	Jason Wang <jasowang@redhat.com>,
	virtio-dev@lists.oasis-open.org
Subject: Re: virtio_net: ethtool supported link modes
Date: Mon, 04 Sep 2017 15:59:13 +0100	[thread overview]
Message-ID: <1504537153.7242.6.camel@arista.com> (raw)
In-Reply-To: <20170901204222-mutt-send-email-mst@kernel.org>

On Fri, 2017-09-01 at 20:45 +0300, Michael S. Tsirkin wrote:
> On Fri, Sep 01, 2017 at 05:19:53PM +0100, Radu Rendec wrote:
> > On Fri, 2017-09-01 at 18:43 +0300, Michael S. Tsirkin wrote:
> > > On Thu, Aug 31, 2017 at 06:04:04PM +0100, Radu Rendec wrote:
> > > > Looking at the code in virtnet_set_link_ksettings, it seems the speed
> > > > and duplex can be set to any valid value. The driver will "remember"
> > > > them and report them back in virtnet_get_link_ksettings.
> > > > 
> > > > However, the supported link modes (link_modes.supported in struct
> > > > ethtool_link_ksettings) is always 0, indicating that no speed/duplex
> > > > setting is supported.
> > > > 
> > > > Does it make more sense to set (at least a few of) the supported link
> > > > modes, such as 10baseT_Half ... 10000baseT_Full?
> > > > 
> > > > I would expect to see consistency between what is reported in
> > > > link_modes.supported and what can actually be set. Could you please
> > > > share your opinion on this?
> > 
> > The use case behind my original question is very simple:
> >  * Net device is queried via ethtool for supported modes.
> >  * Supported modes are presented to user.
> >  * User can configure any of the supported modes.
> 
> Since this has no effect on virtio, isn't presenting
> "no supported modes" to user the right thing to do?

Yes, that makes sense.

> > This is done transparently to the net device type (driver), so it
> > actually makes sense for physical NICs.
> > 
> > This alone of course is not a good enough motivation to modify the
> > driver. And it can be easily addressed in user-space at the application
> > level by testing for the driver.
> 
> I think you might want to special-case no supported modes.
> Special-casing virtio is probably best avoided.
> 
> > I was merely trying to avoid driver-specific workarounds (i.e. keep the
> > application driver agnostic)
> 
> I think that's the right approach. So if driver does not present
> any supported modes this probably means it is not necessary
> to display or program any.

Yes, apparently it boils down to special-casing no supported modes.
This avoids both modifying virtio and special-casing virtio, and keeps
the application driver-agnostic at the same time.

Thanks for all the feedback. It was very helpful in figuring out the
right approach. I really appreciate it.

Radu

  parent reply	other threads:[~2017-09-04 14:59 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-08-31 17:04 virtio_net: ethtool supported link modes Radu Rendec
2017-09-01  3:36 ` Jason Wang
2017-09-01  3:36   ` Jason Wang
2017-09-01 12:01   ` Radu Rendec
2017-09-01 12:01   ` Radu Rendec via Virtualization
2017-09-01 15:43 ` Michael S. Tsirkin
2017-09-01 15:43 ` [virtio-dev] " Michael S. Tsirkin
2017-09-01 15:43   ` Michael S. Tsirkin
2017-09-01 16:19   ` Radu Rendec
2017-09-01 17:45     ` [virtio-dev] " Michael S. Tsirkin
2017-09-01 17:45       ` Michael S. Tsirkin
2017-09-04 14:59       ` Radu Rendec via Virtualization
2017-09-04 14:59       ` Radu Rendec [this message]
2017-09-01 17:45     ` Michael S. Tsirkin
2017-09-01 16:19   ` Radu Rendec via Virtualization
  -- strict thread matches above, loose matches on Subject: below --
2017-08-31 17:04 Radu Rendec via Virtualization

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1504537153.7242.6.camel@arista.com \
    --to=rrendec@arista.com \
    --cc=jasowang@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=virtio-dev@lists.oasis-open.org \
    --cc=virtualization@lists.linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.