[Bug 259380] linux(4): linux_recvfrom(2) fails: linux_recvfrom -1 errno -22 Invalid argument

From: <bugzilla-noreply_at_freebsd.org>
Date: Wed, 03 Nov 2021 20:33:04 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259380

--- Comment #5 from Jason Mader <jasonmader@gmail.com> ---
This is how it used to be behave in 11.2,

 59822 rlm      CALL  linux_select(0x4000,0x7323e8,0,0,0x7fffffffcdd0)
 59822 rlm      RET   linux_select 1
 59822 rlm      CALL 
linux_recvfrom(0x4,0x731704,0x6,0x4000,0x72c94c,0x7fffffffcdcc)
 59822 rlm      GIO   fd 4 read 6 bytes
       0x0000 0100 8e00 008f                                                   
                                   |......|

 59822 rlm      RET   linux_recvfrom 6
 59822 rlm      CALL  linux_select(0x4000,0x72c148,0,0,0x7fffffffcdd0)
 59822 rlm      RET   linux_select 1
 59822 rlm      CALL 
linux_recvfrom(0x4,0x73170a,0x8e,0x4000,0x72c94c,0x7fffffffcdcc)
 59822 rlm      GIO   fd 4 read 142 bytes
 59822 rlm      RET   linux_recvfrom 142/0x8e

ssize_t recvfrom(int sockfd, void *buf, size_t len, int flags, struct sockaddr
*src_addr, socklen_t *addrlen);
                        0x4   0x731704         0x6     0x4000                  
0x72c94c      0x7fffffffcdcc

This is the first recvfrom error on 13.0 that matches the above 6 byte read,
looks like just getting a size for the next message,

 35514 rlm      CALL  linux_select(0x4000,0x85e6d8,0,0,0x7fffffffddc0)
 35514 rlm      RET   linux_select 1
 35514 rlm      CALL 
linux_recvfrom(0x4,0x85d914,0x6,0x4000,0x861c7c,0x7fffffffddf0)
 35514 rlm      GIO   fd 4 read 6 bytes
       0x0000 0100 b900 fdb7                                                   
                                   |......|

 35514 rlm      RET   linux_recvfrom -1 errno -22 Invalid argument

If there is any way to find out more detail on why this linux_recvfrom() fails,
please let me know and I'll provide that information.

-- 
You are receiving this mail because:
You are the assignee for the bug.