linux/drivers/net/ethernet/aquantia/atlantic
Igor Russkikh 31bafc49a7 net: aquantia: tx clean budget logic error
In case no other traffic happening on the ring, full tx cleanup
may not be completed. That may cause socket buffer to overflow
and tx traffic to stuck until next activity on the ring happens.

This is due to logic error in budget variable decrementor.
Variable is compared with zero, and then post decremented,
causing it to become MAX_INT. Solution is remove decrementor
from the `for` statement and rewrite it in a clear way.

Fixes: b647d39809 ("net: aquantia: Add tx clean budget and valid budget handling logic")
Signed-off-by: Igor Russkikh <igor.russkikh@aquantia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2019-05-27 10:24:13 -07:00
..
hw_atl net: aquantia: remove outdated device ids 2019-05-01 09:30:15 -04:00
aq_cfg.h net: aquantia: Increase rx ring default size from 1K to 2K 2019-03-23 22:16:53 -04:00
aq_common.h net: aquantia: remove outdated device ids 2019-05-01 09:30:15 -04:00
aq_drvinfo.c net: aquantia: fix undefined devm_hwmon_device_register_with_info reference 2019-05-09 09:48:44 -07:00
aq_drvinfo.h net: aquantia: implement hwmon api for chip temperature 2019-05-01 09:30:14 -04:00
aq_ethtool.c net: aquantia: introduce fwreq mutex 2019-05-01 09:30:15 -04:00
aq_ethtool.h net: ethernet: aquantia: Ethtool support 2017-01-24 15:03:41 -05:00
aq_filters.c net: aquantia: fix spelling mistake "specfield" -> "specified" 2018-11-17 21:36:09 -08:00
aq_filters.h net: aquantia: add support of rx-vlan-filter offload 2018-11-14 08:48:37 -08:00
aq_hw_utils.c net: aquantia: fixups on 64bit dma counters 2019-05-01 09:30:15 -04:00
aq_hw_utils.h net: aquantia: fixups on 64bit dma counters 2019-05-01 09:30:15 -04:00
aq_hw.h net: aquantia: add link interrupt fields 2019-05-01 09:30:15 -04:00
aq_main.c net: aquantia: Make aq_ndev_driver_name static 2019-05-05 10:48:45 -07:00
aq_main.h net: aquantia: create global service workqueue 2019-05-01 09:30:15 -04:00
aq_nic.c net: aquantia: get total counters from DMA block 2019-05-01 09:30:15 -04:00
aq_nic.h net: aquantia: extract timer cb into work job 2019-05-01 09:30:15 -04:00
aq_pci_func.c net: aquantia: remove outdated device ids 2019-05-01 09:30:15 -04:00
aq_pci_func.h net: aquantia: link status irq handling 2019-05-01 09:30:15 -04:00
aq_ring.c net: aquantia: tx clean budget logic error 2019-05-27 10:24:13 -07:00
aq_ring.h net: aquantia: optimize rx performance by page reuse strategy 2019-03-23 22:16:53 -04:00
aq_rss.h net: ethernet: aquantia: Receive side scaling 2017-01-24 15:03:41 -05:00
aq_utils.h net: aquantia: Cleanup status flags accesses 2018-01-16 14:40:00 -05:00
aq_vec.c net: aquantia: optimize rx performance by page reuse strategy 2019-03-23 22:16:53 -04:00
aq_vec.h net: aquantia: Eliminate aq_nic structure abstraction 2018-01-16 14:40:01 -05:00
Makefile net: aquantia: implement hwmon api for chip temperature 2019-05-01 09:30:14 -04:00
ver.h net: aquantia: bump driver version 2018-09-11 23:41:02 -07:00