sim/netdev: eliminated RX data stream congestion in case of high TX network traffic.
In case of high TX network traffic, netdriver_loop() that reads data from netdev was invoked via up_idle() only after high TX network traffic had stopped. That resulted in massive delay and drop of TCP ACK packets and any other packets from netdev (tun/tap device).
This commit is contained in:
parent
09bf8a5f89
commit
019fc0ad78
@ -315,6 +315,12 @@ static int netdriver_txavail(FAR struct net_driver_s *dev)
|
||||
work_queue(LPWORK, &g_avail_work, netdriver_txavail_work, dev, 0);
|
||||
}
|
||||
|
||||
/* Check RX data availability and read the data from the network device now
|
||||
* to prevent RX data stream congestion in case of high TX network traffic.
|
||||
*/
|
||||
|
||||
netdriver_loop();
|
||||
|
||||
return OK;
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user