On 7/25/23 10:02 AM, Stanislav Fomichev wrote:
On 07/25, Breno Leitao wrote:
On Mon, Jul 24, 2023 at 10:31:28AM -0700, Stanislav Fomichev wrote:
On 07/24, Breno Leitao wrote:
Add support for getsockopt command (SOCKET_URING_OP_GETSOCKOPT), where
level is SOL_SOCKET. This is leveraging the sockptr_t infrastructure,
where a sockptr_t is either userspace or kernel space, and handled as
such.
Function io_uring_cmd_getsockopt() is inspired by __sys_getsockopt().
We probably need to also have bpf bits in the new
io_uring_cmd_getsockopt?
I also think this inconsistency behavior should be avoided.
It might be interesting to have the BPF hook for this function as
well, but I would like to do it in a following patch, so, I can
experiment with it better, if that is OK.
We are not using io_uring, so fine with me. However, having a way to bypass
get/setsockopt bpf might be problematic for some other heavy io_uring
users.
Lemme CC a bunch of Meta folks explicitly. I'm not sure what that state
of bpf support in io_uring.
We have use cases on the "cgroup/{g,s}etsockopt". It will be a surprise when the
user moves from the syscall {g,s}etsockopt to SOCKET_URING_OP_*SOCKOPT and
figured that the bpf handling is skipped.