net: bcmgenet: fix throughtput regression
authorJaedon Shin <jaedon.shin@gmail.com>
Sat, 28 Feb 2015 02:48:26 +0000 (11:48 +0900)
committerSasha Levin <sasha.levin@oracle.com>
Sat, 14 Mar 2015 19:37:13 +0000 (15:37 -0400)
commit29db1c2ae7b445ae070ff2643f5c6cfaa508e22e
treeeed0b63d63b82bb1e6dfdbd482f70458faf09819
parente2aaa2c0534fc242c97c1c27bb230da85620eb00
net: bcmgenet: fix throughtput regression

[ Upstream commit 4092e6acf5cb16f56154e2dd22d647023dc3d646 ]

This patch adds bcmgenet_tx_poll for the tx_rings. This can reduce the
interrupt load and send xmit in network stack on time. This also
separated for the completion of tx_ring16 from bcmgenet_poll.

The bcmgenet_tx_reclaim of tx_ring[{0,1,2,3}] operative by an interrupt
is to be not more than a certain number TxBDs. It is caused by too
slowly reclaiming the transmitted skb. Therefore, performance
degradation of xmit after 605ad7f ("tcp: refine TSO autosizing").

Signed-off-by: Jaedon Shin <jaedon.shin@gmail.com>
Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sasha.levin@oracle.com>
drivers/net/ethernet/broadcom/genet/bcmgenet.c
drivers/net/ethernet/broadcom/genet/bcmgenet.h