forked from Minki/linux
b8fbaef586
A driver start_xmit() method cannot free skb and return NETDEV_TX_BUSY, since caller is going to reuse freed skb. In fact netif_tx_stop_queue() / netif_stop_queue() is needed before returning NETDEV_TX_BUSY or you can trigger a ksoftirqd fatal loop. In case of memory allocation error, only safe way is to drop the packet and return NETDEV_TX_OK Also increments tx_dropped counter Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com> Cc: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net> |
||
---|---|---|
.. | ||
control.c | ||
debug-levels.h | ||
debugfs.c | ||
driver.c | ||
fw.c | ||
i2400m-sdio.h | ||
i2400m-usb.h | ||
i2400m.h | ||
Kconfig | ||
Makefile | ||
netdev.c | ||
op-rfkill.c | ||
rx.c | ||
sdio-debug-levels.h | ||
sdio-fw.c | ||
sdio-rx.c | ||
sdio-tx.c | ||
sdio.c | ||
sysfs.c | ||
tx.c | ||
usb-debug-levels.h | ||
usb-fw.c | ||
usb-notif.c | ||
usb-rx.c | ||
usb-tx.c | ||
usb.c |