via-velocity: fix netif_receive_skb use in irq disabled section.
authorfrançois romieu <romieu@fr.zoreil.com>
Mon, 25 Nov 2013 23:40:58 +0000 (00:40 +0100)
committerDavid S. Miller <davem@davemloft.net>
Thu, 28 Nov 2013 23:43:35 +0000 (18:43 -0500)
commitbc9627e7e918a85e906c1a3f6d01d9b8ef911a96
treefbc7e299b017b0ac3857fcb795bada64e57ca21e
parente63e60be62699e74c3e40711c50918b3c007db0a
via-velocity: fix netif_receive_skb use in irq disabled section.

2fdac010bdcf10a30711b6924612dfc40daf19b8 ("via-velocity.c: update napi
implementation") overlooked an irq disabling spinlock when the Rx part
of the NAPI poll handler was converted from netif_rx to netif_receive_skb.

NAPI Rx processing can be taken out of the locked section with a pair of
napi_{disable / enable} since it only races with the MTU change function.

An heavier rework of the NAPI locking would be able to perform NAPI Tx
before Rx where I simply removed one of velocity_tx_srv calls.

References: https://bugzilla.redhat.com/show_bug.cgi?id=1022733
Fixes: 2fdac010bdcf (via-velocity.c: update napi implementation)
Signed-off-by: Francois Romieu <romieu@fr.zoreil.com>
Tested-by: Alex A. Schmidt <aaschmidt1@gmail.com>
Cc: Jamie Heilman <jamie@audible.transient.net>
Cc: Michele Baldessari <michele@acksyn.org>
Cc: Julia Lawall <Julia.Lawall@lip6.fr>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/via/via-velocity.c