Francois Romieu wrote:
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.
You could do some horrible kludge like make netpoll register itself as active and then enable locking in both netpoll_send and hard_start_xmit. Ben -- Ben Greear <[EMAIL PROTECTED]> Candela Technologies Inc http://www.candelatech.com - 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
