-
Notifications
You must be signed in to change notification settings - Fork 4
FAQ & Troubleshooting
James Bensley edited this page Apr 9, 2018
·
4 revisions
The following error message is seen when the Kernel reports ENOBUFS
[user@ucpe_002 emt]$ sudo taskset -c 3-5 ./etherate_mt -i ens2f0 -c 2 -f 64
Using inteface ens2f0 (12)
Frame size set to 64 bytes
Using PACKET_MMAP.
Running in Tx mode.
Write buffer size set to 425984 bytes
Write buffer size set to 425984 bytes
0. 0.00 Rx Gbps (0 fps) 0.00 Tx Gbps (0 fps)
1. 0.00 Rx Gbps (0 fps) 1.46 Tx Gbps (2842624 fps)
2. 0.00 Rx Gbps (0 fps) 1.51 Tx Gbps (2957303 fps)
1234:Socket is stalling!
This is because the interface Tx queue is too long (it's not draining quick enough). Check and reduce the interface Tx queue length (assuming the interface name is "ens2f0") with either:
bensley@ubuntu-laptop:~$ ip link show dev ens2f0
2: ens2f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT qlen 1000
bensley@ubuntu-laptop:~$ sudo ip link set txqueuelen 250 dev ens2f0
bensley@ubuntu-laptop:~$ ip link show dev ens2f0
2: ens2f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT qlen 250
or
bensley@ubuntu-laptop:~$ ifconfig ens2f0 | grep txqueue
collisions:0 txqueuelen:1000
bensley@ubuntu-laptop:~$ sudo ifconfig ens2f0 txqueuelen 250
bensley@ubuntu-laptop:~$ ifconfig ens2f0 | grep txqueue
collisions:0 txqueuelen:250
- Introduction
- References
- EtherateMT Design Notes and Usage:
- EtherateMT Design Overview
- EtherateMT Socket Overview
- EtherateMT PACKET_MMAP Mode
- EtherateMT Transmit Overview
- EtherateMT Transmission - AF_PACKET Deep Dive:
- EtherateMT Transmission - AF_XDP