On 2022/5/20 下午9:52, Willem de Bruijn wrote:
On Fri, May 20, 2022 at 2:40 AM Yun Lu <luyun_611@xxxxxxx> wrote:
From: luyun <luyun@xxxxxxxxxx>
The psock_snd test sends and recievs packets over loopback, but the
parameter lo.accept_local is disabled by default, this test will
fail with Resource temporarily unavailable:
sudo ./psock_snd.sh
dgram
tx: 128
rx: 142
./psock_snd: recv: Resource temporarily unavailable
I cannot reproduce this failure.
Passes on a machine with accept_local 0.
accept_local is defined as
"
accept_local - BOOLEAN
Accept packets with local source addresses. In combination
with suitable routing, this can be used to direct packets
between two local interfaces over the wire and have them
accepted properly.
"
I did this test on my system(Centos 8.3 X86_64):
[root@localhost net]# sysctl net.ipv4.conf.lo.accept_local
net.ipv4.conf.lo.accept_local = 0
[root@localhost net]# ./psock_snd -d
tx: 128
rx: 142
./psock_snd: recv: Resource temporarily unavailable
[root@localhost net]# sysctl -w net.ipv4.conf.lo.accept_local=1
net.ipv4.conf.lo.accept_local = 1
[root@localhost net]# ./psock_snd -d
tx: 128
rx: 142
rx: 100
OK
This failure does seem to be related to accept_local.
Also, it's reported on Ubuntu:
https://bugs.launchpad.net/ubuntu-kernel-tests/+bug/1812618