]> git.ipfire.org Git - thirdparty/linux.git/commit
Merge branch 'af_unix-introduce-so_inq-scm_inq'
authorJakub Kicinski <kuba@kernel.org>
Wed, 9 Jul 2025 01:05:27 +0000 (18:05 -0700)
committerJakub Kicinski <kuba@kernel.org>
Wed, 9 Jul 2025 01:05:27 +0000 (18:05 -0700)
commit042ef6aafd3fa22a0398c1c25c2dc742cba78eed
treea7408f5361ad08f71f135cfe0fb1bc21f3351422
parentd18e43dddf2e7f4d16764cca14032631ab8ef012
parente0f60ba041a0088a48a5064583e8c36306a8f7e3
Merge branch 'af_unix-introduce-so_inq-scm_inq'

Kuniyuki Iwashima says:

====================
af_unix: Introduce SO_INQ & SCM_INQ.

We have an application that uses almost the same code for TCP and
AF_UNIX (SOCK_STREAM).

The application uses TCP_INQ for TCP, but AF_UNIX doesn't have it
and requires an extra syscall, ioctl(SIOCINQ) or getsockopt(SO_MEMINFO)
as an alternative.

Also, ioctl(SIOCINQ) for AF_UNIX SOCK_STREAM is more expensive because
it needs to iterate all skb in the receive queue.

This series adds a cached field for SIOCINQ to speed it up and introduce
SO_INQ, the generic version of TCP_INQ to get the queue length as cmsg in
each recvmsg().
====================

Link: https://patch.msgid.link/20250702223606.1054680-1-kuniyu@google.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>