On Tue, Sep 06, 2005 at 06:37:40PM -0700, Eugene Surovegin wrote:
> On Tue, Sep 06, 2005 at 06:03:38PM -0700, Matt Mackall wrote:
> > On Tue, Sep 06, 2005 at 04:01:24PM -0700, David S. Miller wrote:
> > > So you cannot call into these drivers with HW interrupts disabled or
> > > even worse from HW interrupt context.  These drivers use locking
> > > strategies which are perfectly legal and work until you add netpoll.
> > 
> > And again, I agree.
> > 
> > What I disagree with is the claim that it's netpoll that's "broken".
> > Again, I claim that netpoll is not doing something fundamentally
> > unreasonable. Driving hardware by polling with interrupts disabled is
> > nothing magic, it's just something the network stack to date has not
> > been designed to cope with.
> 
> Well, it's not driving hw in polling mode with hw IRQs disabled 
> (in fact, NAPI does exactly this), it's _calling_ driver entry 
> points from illegal context. IMHO this is not the same.

The only reasonable way for core code to manipulate hardware is
calling driver interfaces, so I think you're splitting hairs.

> > So we can either:
> > 
> > a) have a netpoll that's crippled to softirq-only
> > b) live with some amount of localized brain damage here
> > c) attempt to make the stack more netpoll-accomodating
> 
> or a') make this a per-driver feature (e.g. NETIF_F_NETPOLL_CHALENGED) 
>
> In this case, even if driver cannot handle being called from IRQ 
> context, netconsole still can be used, although in a little more 
> limited fashion, but being safe and not causing lock ups, which, as 
> far as I understand you, it was designed to help debugging in the 
> first place :).

Again, there's basically no point to this at all. It won't catch an
appreciable number of diagnostics that are not already caught by
syslog and it won't work with kgdb-over-ethernet, netdump, etc.

-- 
Mathematics is the supreme nostalgia of our time.
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to