]> git.baikalelectronics.ru Git - kernel.git/commit
net: thunderx: Fix RQ_DROP miscalculation
authorSunil Goutham <sgoutham@cavium.com>
Wed, 29 Jul 2015 13:49:38 +0000 (16:49 +0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 30 Jul 2015 06:52:31 +0000 (23:52 -0700)
commitec3019d39ea9c907a71249bc9253ca9d58b576c4
tree92b52e805cc0194df1d93a21b1e7e53dded0d270
parenta44a12b3660ab61baef54c8a626685495f2c7c6f
net: thunderx: Fix RQ_DROP miscalculation

With earlier configured value sufficient number of CQEs are not
being reserved for transmitted packets. Hence under heavy incoming
traffic load, receive notifications will take away most of the CQ
thus transmit notifications will be lost resulting in tx skbs not
being freed.

Finally SQ will be full and it will be stopped, watchdog timer
will kick in. After this fix receive notifications will not take
morethan half of CQ reserving the rest for transmit notifications.

Also changed CQ & SQ sizes from 16k to 4k.
This is also due to the receive notifications taking first half of
CQ under heavy load and time taken by NAPI to clear transmit notifications
will increase with higher queue sizes. Again results in SQ being stopped.

Signed-off-by: Sunil Goutham <sgoutham@cavium.com>
Signed-off-by: Aleksey Makarov <aleksey.makarov@caviumnetworks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/cavium/thunder/nicvf_queues.h