[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <1386004696.1516.15.camel@bwh-desktop.uk.level5networks.com>
Date: Mon, 2 Dec 2013 17:18:16 +0000
From: Ben Hutchings <bhutchings@...arflare.com>
To: "Wyborny, Carolyn" <carolyn.wyborny@...el.com>
CC: David Miller <davem@...emloft.net>,
"Kirsher, Jeffrey T" <jeffrey.t.kirsher@...el.com>,
"netdev@...r.kernel.org" <netdev@...r.kernel.org>,
"gospo@...hat.com" <gospo@...hat.com>,
"sassmann@...hat.com" <sassmann@...hat.com>
Subject: Re: [net 1/8] igb: Update queue reinit function to call dev_close
when init of queues fails
On Mon, 2013-12-02 at 16:55 +0000, Wyborny, Carolyn wrote:
> > -----Original Message-----
> > From: David Miller [mailto:davem@...emloft.net]
> > Sent: Friday, November 29, 2013 12:48 PM
> > To: Kirsher, Jeffrey T
> > Cc: Wyborny, Carolyn; netdev@...r.kernel.org; gospo@...hat.com;
> > sassmann@...hat.com
> > Subject: Re: [net 1/8] igb: Update queue reinit function to call dev_close when
> > init of queues fails
> >
> > From: Jeff Kirsher <jeffrey.t.kirsher@...el.com>
> > Date: Wed, 27 Nov 2013 23:35:55 -0800
> >
> > > From: Carolyn Wyborny <carolyn.wyborny@...el.com>
> > >
> > > This patch adds a call to dev_close if the queue reinit fails in order
> > > to make clearer to the user that the device is down.
> > >
> > > Signed-off-by: Carolyn Wyborny <carolyn.wyborny@...el.com>
> > > Tested-by: Aaron Brown <aaron.f.brown@...el.com>
> > > Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@...el.com>
> >
> > This is a very bad approach to this problem.
> >
> > Users absolutely do not expect their entire interface to go down simply because
> > an ethtool request cannot be satisfied. This is extremely poor quality of
> > implementation.
> >
> > And in this specific case it absolutely is not necessary.
> >
> > The only thing that can fail is the queue allocation, so make a function which can
> > preserve the previous configuration if the queue allocation fails. How about
> > "igb_reinit_interrupt_scheme".
> >
> > Don't free the q vectors until the very last moment, when you know that the
> > allocation of the new q vectors has succeeded.
> >
> > I'm not applying this patch, it needs to be reimplemented more sanely, using the
> > above suggestions or similar.
> >
>
> I did this per Ben's suggestion on Laura's original patch. You didn't
> argue with it at the time. I don't think I misunderstood his
> suggestion, but if so, I'll rework it.
My concerns were that after a failure where the interface is effectively
down,
- the interface must be in a consistent state where is it safe to
reconfigure the interface again or to unbind the driver, and
- it should be obviously down so the user can then try to bring it up
again.
David is saying that you should implement the reconfiguration in such a
way that you can always roll back to the previous working state in case
of a failure (which would make my concerns moot). This is definitely a
good goal but I'm not convinced that it's always possible.
Ben.
--
Ben Hutchings, Staff Engineer, Solarflare
Not speaking for my employer; that's the marketing department's job.
They asked us to note that Solarflare product names are trademarked.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Powered by blists - more mailing lists