]> 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)
commitdb5ee4a0633c96e593a81c3a04712030757b0087
tree92b52e805cc0194df1d93a21b1e7e53dded0d270
parent8081e6061b5be7f28018cc9bb1f5076873be071a
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