linux/drivers/net/ixp2000
Dongdong Deng 4871953c0e drivers/net: fixed drivers that support netpoll use ndo_start_xmit()
The NETPOLL API requires that interrupts remain disabled in
netpoll_send_skb(). The use of "A functions set" in the NETPOLL API
callbacks causes the interrupts to get enabled and can lead to kernel
instability.

The solution is to use "B functions set" to prevent the irqs from
getting enabled while in netpoll_send_skb().

A functions set:
local_irq_disable()/local_irq_enable()
spin_lock_irq()/spin_unlock_irq()
spin_trylock_irq()/spin_unlock_irq()

B functions set:
local_irq_save()/local_irq_restore()
spin_lock_irqsave()/spin_unlock_irqrestore()
spin_trylock_irqsave()/spin_unlock_irqrestore()

Signed-off-by: Dongdong Deng <dongdong.deng@windriver.com>
Acked-by: Matt Mackall <mpm@selenic.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-08-23 19:51:03 -07:00
..
Kconfig
Makefile
caleb.c
caleb.h
enp2611.c [NET]: Nuke SET_MODULE_OWNER macro. 2007-10-10 16:51:13 -07:00
ixp2400-msf.c [ARM] Move include/asm-arm/arch-* to arch/arm/*/include/mach 2008-08-07 09:55:48 +01:00
ixp2400-msf.h
ixp2400_rx.uc
ixp2400_rx.ucode
ixp2400_tx.uc
ixp2400_tx.ucode
ixpdev.c drivers/net: fixed drivers that support netpoll use ndo_start_xmit() 2009-08-23 19:51:03 -07:00
ixpdev.h [NET]: Make NAPI polling independent of struct net_device objects. 2007-10-10 16:47:45 -07:00
ixpdev_priv.h
pm3386.c
pm3386.h