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. 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 Option a) is a non-starter. It's scarcely better than syslogd for logging purposes, and completely useless for things like kgdb-over-ethernet and the like. Option b) is what we have now. It's ugly as hell, agreed, but it does work for quite a few scenarios where nothing else suffices. Option c) is obviously a big project but maybe we can get from here to there. One possible step in that direction would be exposing a standard driver lock that netpoll can see and switching drivers that have trouble (bnx2 and tg3 for starters) over to using it. -- 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