Thread (2 messages) 2 messages, 2 authors, 2013-11-28

Re: [PATCH net 1/1] via-velocity: fix netif_receive_skb use in irq disabled section.

From: David Miller <davem@davemloft.net>
Date: 2013-11-28 23:45:31

From: Francois Romieu <romieu@fr.zoreil.com>
Date: Tue, 26 Nov 2013 00:40:58 +0100
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 <redacted>
Applied and queued up for -stable, thanks.

Just a note that we usually recommend to people to do TX processing
before RX in NAPI, because the TX work can liberate packets and make
them available to RX reclaim.  But that would be quite hard with the
approach you took to fix this bug simply.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help