summaryrefslogtreecommitdiffstats
path: root/net/ipv6
diff options
context:
space:
mode:
authorEric Dumazet <eric.dumazet@gmail.com>2012-03-14 09:21:44 +0000
committerDavid S. Miller <davem@davemloft.net>2012-03-16 02:01:41 -0700
commitb8fbaef586176f6abe0eb7887ddae66e99898b79 (patch)
treede0789276c35e3cb5d55dc858ce6b76a30918efc /net/ipv6
parentbb6d5e76fb4fba9aa36726db41404512f3286c0f (diff)
downloadlinux-b8fbaef586176f6abe0eb7887ddae66e99898b79.tar.gz
linux-b8fbaef586176f6abe0eb7887ddae66e99898b79.tar.bz2
linux-b8fbaef586176f6abe0eb7887ddae66e99898b79.zip
wimax/i2400m: fix erroneous NETDEV_TX_BUSY use
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>
Diffstat (limited to 'net/ipv6')
0 files changed, 0 insertions, 0 deletions