All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jakub Kicinski <kubakici@wp.pl>
To: Siwei Liu <loseweigh@gmail.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
	si-wei liu <si-wei.liu@oracle.com>,
	"Samudrala, Sridhar" <sridhar.samudrala@intel.com>,
	Jiri Pirko <jiri@resnulli.us>,
	Stephen Hemminger <stephen@networkplumber.org>,
	David Miller <davem@davemloft.net>,
	Netdev <netdev@vger.kernel.org>,
	virtualization@lists.linux-foundation.org, "Brandeburg,
	Jesse" <jesse.brandeburg@intel.com>,
	Alexander Duyck <alexander.h.duyck@intel.com>,
	Jason Wang <jasowang@redhat.com>,
	liran.alon@oracle.com
Subject: Re: [virtio-dev] Re: net_failover slave udev renaming (was Re: [RFC PATCH net-next v6 4/4] netvsc: refactor notifier/event handling code to use the bypass framework)
Date: Thu, 28 Feb 2019 17:05:20 -0800	[thread overview]
Message-ID: <20190228170520.527ed6df@cakuba.netronome.com> (raw)
In-Reply-To: <CADGSJ239j-fG_vifkj-gTnAb_RXtBEbnQCFdZGimcgPXh35CMA@mail.gmail.com>

On Thu, 28 Feb 2019 16:20:28 -0800, Siwei Liu wrote:
> On Thu, Feb 28, 2019 at 11:56 AM Jakub Kicinski wrote:
> > On Thu, 28 Feb 2019 14:36:56 -0500, Michael S. Tsirkin wrote:  
> > > > It is a bit of a the chicken or the egg situation ;)  But users can
> > > > just blacklist, too.  Anyway, I think this is far better than module
> > > > parameters  
> > >
> > > Sorry I'm a bit confused. What is better than what?  
> >
> > I mean that blacklist net_failover or module param to disable
> > net_failover and handle in user space are better than trying to solve
> > the renaming at kernel level (either by adding module params that make
> > the kernel rename devices or letting user space change names of running
> > devices if they are slaves).  
> 
> Before I was aksed to revive this old mail thread, I knew the
> discussion could end up with something like this. Yes, theoretically
> there's a point - basically you don't believe kernel should take risk
> in fixing the issue, so you push back the hope to something in
> hypothesis that actually wasn't done and hard to get done in reality.
> It's not too different than saying "hey, what you're asking for is
> simply wrong, don't do it! Go back to modify userspace to create a
> bond or team instead!" FWIW I want to emphasize that the debate for
> what should be the right place to implement this failover facility:
> userspace versus kernel, had been around for almost a decade, and no
> real work ever happened in userspace to "standardize" this in the
> Linux world.

Let me offer you my very subjective opinion of why "no real work ever
happened in user space".  The actors who have primary interest to get
the auto-bonding working are HW vendors trying to either convince
customers to use SR-IOV, or being pressured by customers to make SR-IOV
easier to consume.  HW vendors hire driver developers, not user space
developers.  So the solution we arrive at is in the kernel for a non
technical reason (Conway's law, sort of).

$ cd NetworkManager/
$ git log --pretty=format:"%ae" | \
    grep '\(mellanox\|intel\|broadcom\|netronome\)' | sort | uniq -c
     81 andrew.zaborowski@intel.com
      2 David.Woodhouse@intel.com
      2 ismo.puustinen@intel.com
      1 michael.i.doherty@intel.com

Andrew works on WiFi.

I have asked the NetworkManager folks to implement this feature last
year when net_failover got dangerously close to getting merged, and
they said they were never approached with this request before, much less
offered code that solve it.  Unfortunately before they got around to it
net_failover was merged already, and they didn't proceed.  

So to my knowledge nobody ever tried to solve this in user space.
I don't think net_failover is particularly terrible, or that renaming
of primary in the kernel is the end of the world, but I'd appreciate if
you could point me to efforts to solve it upstream in user space
components, or acknowledge that nobody actually tried that.

  reply	other threads:[~2019-03-01  1:05 UTC|newest]

Thread overview: 147+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-04-10 18:59 [RFC PATCH net-next v6 0/4] Enable virtio_net to act as a backup for a passthru device Sridhar Samudrala
2018-04-10 18:59 ` [virtio-dev] " Sridhar Samudrala
2018-04-10 18:59 ` [RFC PATCH net-next v6 1/4] virtio_net: Introduce VIRTIO_NET_F_BACKUP feature bit Sridhar Samudrala
2018-04-10 18:59   ` [virtio-dev] " Sridhar Samudrala
2018-04-10 18:59 ` [RFC PATCH net-next v6 2/4] net: Introduce generic bypass module Sridhar Samudrala
2018-04-10 18:59   ` [virtio-dev] " Sridhar Samudrala
2018-04-11 15:51   ` Jiri Pirko
2018-04-11 19:13     ` Samudrala, Sridhar
2018-04-11 19:13     ` Samudrala, Sridhar
2018-04-11 19:13       ` [virtio-dev] " Samudrala, Sridhar
2018-04-18  9:25       ` Jiri Pirko
2018-04-18  9:25       ` Jiri Pirko
2018-04-18 18:43         ` Samudrala, Sridhar
2018-04-18 18:43         ` Samudrala, Sridhar
2018-04-18 18:43           ` [virtio-dev] " Samudrala, Sridhar
2018-04-18 19:13           ` Jiri Pirko
2018-04-18 19:13           ` Jiri Pirko
2018-04-18 19:46             ` Michael S. Tsirkin
2018-04-18 19:46               ` [virtio-dev] " Michael S. Tsirkin
2018-04-18 20:32               ` Jiri Pirko
2018-04-18 22:46                 ` Samudrala, Sridhar
2018-04-18 22:46                   ` [virtio-dev] " Samudrala, Sridhar
2018-04-19  6:35                   ` Jiri Pirko
2018-04-19  6:35                   ` Jiri Pirko
2018-04-18 22:46                 ` Samudrala, Sridhar
2018-04-19  4:08                 ` Michael S. Tsirkin
2018-04-19  4:08                   ` [virtio-dev] " Michael S. Tsirkin
2018-04-19  7:22                   ` Jiri Pirko
2018-04-19  7:22                   ` Jiri Pirko
2018-04-19  4:08                 ` Michael S. Tsirkin
2018-04-18 20:32               ` Jiri Pirko
2018-04-11 15:51   ` Jiri Pirko
2018-04-10 18:59 ` [RFC PATCH net-next v6 3/4] virtio_net: Extend virtio to use VF datapath when available Sridhar Samudrala
2018-04-10 18:59   ` [virtio-dev] " Sridhar Samudrala
2018-04-10 18:59 ` [RFC PATCH net-next v6 4/4] netvsc: refactor notifier/event handling code to use the bypass framework Sridhar Samudrala
2018-04-10 18:59   ` [virtio-dev] " Sridhar Samudrala
2018-04-10 21:26   ` Stephen Hemminger
2018-04-10 22:56     ` Samudrala, Sridhar
2018-04-10 22:56       ` [virtio-dev] " Samudrala, Sridhar
2018-04-10 23:28     ` Michael S. Tsirkin
2018-04-10 23:28     ` Michael S. Tsirkin
2018-04-10 23:28       ` [virtio-dev] " Michael S. Tsirkin
2018-04-10 23:44       ` Siwei Liu
2018-04-10 23:44         ` [virtio-dev] " Siwei Liu
2018-04-10 23:59         ` Stephen Hemminger
2018-04-10 23:44       ` Siwei Liu
2018-04-11  7:50       ` Jiri Pirko
2018-04-11  7:50       ` Jiri Pirko
2018-04-11  1:21     ` Michael S. Tsirkin
2018-04-11  1:21     ` Michael S. Tsirkin
2018-04-11  7:53     ` Jiri Pirko
2018-04-11  7:53     ` Jiri Pirko
2019-02-22  1:14       ` net_failover slave udev renaming (was Re: [RFC PATCH net-next v6 4/4] netvsc: refactor notifier/event handling code to use the bypass framework) Siwei Liu
2019-02-22  1:14         ` [virtio-dev] " Siwei Liu
2019-02-22  1:39         ` Michael S. Tsirkin
2019-02-22  1:39           ` [virtio-dev] " Michael S. Tsirkin
2019-02-22  3:33           ` si-wei liu
2019-02-22  3:33             ` si-wei liu
2019-02-22  7:00             ` Samudrala, Sridhar
2019-02-22  7:55               ` si-wei liu
2019-02-22  7:55                 ` si-wei liu
2019-02-22 12:58                 ` Rob Miller
2019-02-22 12:58                   ` Rob Miller
2019-02-22 15:14                 ` Michael S. Tsirkin
2019-02-22 15:14                   ` Michael S. Tsirkin
2019-02-26  0:58                   ` si-wei liu
2019-02-26  0:58                     ` si-wei liu
2019-02-26  1:39                     ` Stephen Hemminger
2019-02-26  1:39                     ` Stephen Hemminger
2019-02-26  2:05                       ` Michael S. Tsirkin
2019-02-26  2:05                       ` Michael S. Tsirkin
2019-02-26  2:05                         ` Michael S. Tsirkin
2019-02-27  0:49                         ` si-wei liu
2019-02-27  0:49                           ` si-wei liu
2019-02-26  2:08                     ` Michael S. Tsirkin
2019-02-26  2:08                     ` Michael S. Tsirkin
2019-02-26  2:08                       ` Michael S. Tsirkin
2019-02-27  0:17                       ` si-wei liu
2019-02-27  0:17                         ` si-wei liu
2019-02-27 21:57                         ` Stephen Hemminger
2019-02-27 21:57                         ` Stephen Hemminger
2019-02-27 22:30                           ` si-wei liu
2019-02-27 22:30                             ` si-wei liu
2019-02-27 22:38                         ` Michael S. Tsirkin
2019-02-27 22:38                         ` Michael S. Tsirkin
2019-02-27 22:38                           ` Michael S. Tsirkin
2019-02-27 23:34                           ` si-wei liu
2019-02-27 23:34                             ` si-wei liu
2019-02-27 23:50                             ` Michael S. Tsirkin
2019-02-27 23:50                             ` Michael S. Tsirkin
2019-02-27 23:50                               ` Michael S. Tsirkin
2019-02-28  0:00                               ` Liran Alon
2019-02-28  0:00                               ` Liran Alon
2019-02-28  0:03                               ` Stephen Hemminger
2019-02-28  0:38                                 ` Michael S. Tsirkin
2019-02-28  0:38                                 ` Michael S. Tsirkin
2019-02-28  0:38                                   ` Michael S. Tsirkin
2019-02-28  0:03                               ` Stephen Hemminger
2019-02-28  0:38                               ` si-wei liu
2019-02-28  0:38                                 ` si-wei liu
2019-02-28  0:41                                 ` Michael S. Tsirkin
2019-02-28  0:41                                 ` Michael S. Tsirkin
2019-02-28  0:41                                   ` Michael S. Tsirkin
2019-02-28  0:52                                   ` Jakub Kicinski
2019-02-28  0:52                                   ` Jakub Kicinski
2019-02-28  1:26                                     ` Michael S. Tsirkin
2019-02-28  1:26                                       ` Michael S. Tsirkin
2019-02-28  1:52                                       ` Jakub Kicinski
2019-02-28  1:52                                       ` Jakub Kicinski
2019-02-28  4:47                                         ` Michael S. Tsirkin
2019-02-28  4:47                                         ` Michael S. Tsirkin
2019-02-28  4:47                                           ` Michael S. Tsirkin
2019-02-28 18:13                                           ` Jakub Kicinski
2019-02-28 19:36                                             ` Michael S. Tsirkin
2019-02-28 19:36                                             ` Michael S. Tsirkin
2019-02-28 19:36                                               ` Michael S. Tsirkin
2019-02-28 19:56                                               ` Jakub Kicinski
2019-02-28 19:56                                               ` Jakub Kicinski
2019-02-28 20:14                                                 ` Michael S. Tsirkin
2019-02-28 20:14                                                 ` Michael S. Tsirkin
2019-02-28 23:31                                                   ` Jakub Kicinski
2019-02-28 23:31                                                   ` Jakub Kicinski
2019-03-01  0:20                                                 ` Siwei Liu
2019-03-01  0:20                                                 ` Siwei Liu
2019-03-01  1:05                                                   ` Jakub Kicinski [this message]
2019-03-02  0:30                                                     ` Siwei Liu
2019-03-02  0:30                                                     ` Siwei Liu
2019-03-01  1:05                                                   ` Jakub Kicinski
2019-02-28 18:13                                           ` Jakub Kicinski
2019-02-28  1:26                                     ` Michael S. Tsirkin
2019-02-28  9:32                                   ` si-wei liu
2019-02-28  9:32                                     ` si-wei liu
2019-02-28 14:26                                     ` Michael S. Tsirkin
2019-02-28 14:26                                       ` Michael S. Tsirkin
2019-03-01  1:30                                       ` si-wei liu
2019-03-01  1:30                                         ` si-wei liu
2019-03-01 13:27                                         ` Michael S. Tsirkin
2019-03-01 13:27                                         ` Michael S. Tsirkin
2019-03-01 13:27                                           ` Michael S. Tsirkin
2019-03-01 20:55                                           ` si-wei liu
2019-03-01 20:55                                             ` si-wei liu
2019-02-28 14:26                                     ` Michael S. Tsirkin
2019-02-22 15:14                 ` Michael S. Tsirkin
2019-02-22  7:00             ` Samudrala, Sridhar
2019-02-22  1:39         ` Michael S. Tsirkin
2019-02-22  1:14       ` Siwei Liu
2018-04-10 21:26   ` [RFC PATCH net-next v6 4/4] netvsc: refactor notifier/event handling code to use the bypass framework Stephen Hemminger

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=20190228170520.527ed6df@cakuba.netronome.com \
    --to=kubakici@wp.pl \
    --cc=alexander.h.duyck@intel.com \
    --cc=davem@davemloft.net \
    --cc=jasowang@redhat.com \
    --cc=jesse.brandeburg@intel.com \
    --cc=jiri@resnulli.us \
    --cc=liran.alon@oracle.com \
    --cc=loseweigh@gmail.com \
    --cc=mst@redhat.com \
    --cc=netdev@vger.kernel.org \
    --cc=si-wei.liu@oracle.com \
    --cc=sridhar.samudrala@intel.com \
    --cc=stephen@networkplumber.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.