From: Francois Romieu <[EMAIL PROTECTED]>
Date: Wed, 7 Sep 2005 20:59:49 +0200

> Stephen Hemminger <[EMAIL PROTECTED]> :
> [...]
> > It really sounds like netconsole needs to have a different device hook
> > instead of start_xmit.  It also probably doesn't want to have allocate
> > an skb.  What you want is a synchronous way to send one packet with
> > interrupts disabled:
> > 
> >     (dev->netpoll_send)(dev, packet, len)
> 
> I do not see how it will solve the issue raised by David:
> 
> hard_start_xmit does not disable irq and takes nearly no lock,
> thus it can be interrupted if a random irq event happens on a
> different device. Assume that the driver of the said different
> device issues a printk through netconsole and the game is over.
> 
> Without extra locking, netpoll_send can not know that the
> interrupted hard_start_xmit has left the device/driver in a sane
> state.

Exactly.

As I tried to make clear in a previous email I sent out today in this
thread, netpoll would need to take over the _entire_ set of driver
code paths in order to work, similarly to how the serial console stuff
does.
-
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