]> git.baikalelectronics.ru Git - kernel.git/commit
IPoIB: Remove redundant check of netif_queue_stopped() in xmit handler
authorKrishna Kumar <krkumar2@in.ibm.com>
Thu, 15 Nov 2007 05:05:37 +0000 (10:35 +0530)
committerRoland Dreier <rolandd@cisco.com>
Fri, 25 Jan 2008 22:17:44 +0000 (14:17 -0800)
commit6b515fa2e56b35d411fb3cc2492971d5ebed166b
tree7e2885c5f3ac8cd1abc4366b228088589f1ec917
parente7f33dcc36e37b523f1b65aa83221933c298bd98
IPoIB: Remove redundant check of netif_queue_stopped() in xmit handler

qdisc_run() now tests for queue_stopped() before calling
__qdisc_run(), and the same check is done in every iteration of
__qdisc_run(), so another check is not required in the driver xmit.
This means that ipoib_start_xmit() no longer needs to test
netif_queue_stopped(); the test was added to fix earlier kernels,
where the networking stack did not guarantee that the xmit method of
an LLTX driver would not be called after the queue was stopped, but
current kernels do provide this guarantee.

To validate, I put a debug in the TX_BUSY path which never hit with 64
threads running overnight exercising this code a few 100 million
times.

Signed-off-by: Krishna Kumar <krkumar2@in.ibm.com>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
drivers/infiniband/ulp/ipoib/ipoib_main.c