linux/drivers/net/ethernet/renesas
Yoshihiro Shimoda 5718458b09 net: renesas: ravb: Fix a stuck issue when a lot of frames are received
When a lot of frames were received in the short term, the driver
caused a stuck of receiving until a new frame was received. For example,
the following command from other device could cause this issue.

    $ sudo ping -f -l 1000 -c 1000 <this driver's ipaddress>

The previous code always cleared the interrupt flag of RX but checks
the interrupt flags in ravb_poll(). So, ravb_poll() could not call
ravb_rx() in the next time until a new RX frame was received if
ravb_rx() returned true. To fix the issue, always calls ravb_rx()
regardless the interrupt flags condition.

Fixes: c156633f13 ("Renesas Ethernet AVB driver proper")
Signed-off-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2021-04-21 10:56:37 -07:00
..
Kconfig treewide: replace '---help---' in Kconfig files with 'help' 2020-06-14 01:57:21 +09:00
Makefile ethernet: renesas: convert to SPDX identifiers 2018-09-10 10:11:53 -07:00
ravb_main.c net: renesas: ravb: Fix a stuck issue when a lot of frames are received 2021-04-21 10:56:37 -07:00
ravb_ptp.c ptp: Introduce strict checking of external time stamp options. 2019-11-15 12:48:32 -08:00
ravb.h ravb: update "undocumented" annotations 2021-01-08 18:38:32 -08:00
sh_eth.c sh_eth: fix TRSCER mask for R7S9210 2021-03-01 13:22:34 -08:00
sh_eth.h sh_eth: use Gigabit register map for R7S72100 2020-02-16 19:44:41 -08:00