intermittent transmit problem #65
Loading…
Reference in New Issue
There is no content yet.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may exist for a short time before cleaning up, in most cases it CANNOT be undone. Continue?
It seems that there is still occasional packet drop for the ethernet driver. The other end would just wait forever for the packet.
The probablity is pretty low, but I do get it once or twice this morning when I try to test the performance for RPC.
Also when I try to modify the socket options with
tcp_nodelay
, our code would fail, perhaps some packets are dropped. This makes me a bit worried.Shall we try to do some fault injection into the system and see if our ethernet driver is robust enough? Like packet re-ordering, packet loss, etc.
Do you mean the TCP/IP stack (not quite the driver)?
I'm not sure, the behavior is that the next kernel would not be started until I try another connection such as
artiq_coremgmt log
. Perhaps this is not due to packet drop but some weird bug like M-Labs/artiq-zynq#93Note: this is very rare.
Does it have to be an actual TCP connection, or does e.g. a ping packet unblock the kernel?
yes, a ping packet would do.
OK, so it looks like it could be in the driver indeed.
Running the
test_performance
in a loop could reproduce this issue consistently. It seems that the packet is not really transmitted until other packet comes. I am not sure what is happening there.intermittent packet dropto intermittent transmit problemNot occurring after fixing the memory leak in aritq-zyqn. Possibly issue with timing, and the response time for the firmware increases as the heap is fragmented.
Closing now.