]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
fs: Rename anon_inode_getfile_secure() and anon_inode_getfd_secure()
authorPaolo Bonzini <pbonzini@redhat.com>
Fri, 3 Nov 2023 10:47:51 +0000 (06:47 -0400)
committerPaolo Bonzini <pbonzini@redhat.com>
Tue, 14 Nov 2023 13:00:57 +0000 (08:00 -0500)
commit4f0b9194bc119a9850a99e5e824808e2f468c348
tree9546abc76372be7cdbb1790d74fbaf009b8b86cf
parent0003e2a414687fff6a75250d381e4abf345d663f
fs: Rename anon_inode_getfile_secure() and anon_inode_getfd_secure()

The call to the inode_init_security_anon() LSM hook is not the sole
reason to use anon_inode_getfile_secure() or anon_inode_getfd_secure().
For example, the functions also allow one to create a file with non-zero
size, without needing a full-blown filesystem.  In this case, you don't
need a "secure" version, just unique inodes; the current name of the
functions is confusing and does not explain well the difference with
the more "standard" anon_inode_getfile() and anon_inode_getfd().

Of course, there is another side of the coin; neither io_uring nor
userfaultfd strictly speaking need distinct inodes, and it is not
that clear anymore that anon_inode_create_get{file,fd}() allow the LSM
to intercept and block the inode's creation.  If one was so inclined,
anon_inode_getfile_secure() and anon_inode_getfd_secure() could be kept,
using the shared inode or a new one depending on CONFIG_SECURITY.
However, this is probably overkill, and potentially a cause of bugs in
different configurations.  Therefore, just add a comment to io_uring
and userfaultfd explaining the choice of the function.

While at it, remove the export for what is now anon_inode_create_getfd().
There is no in-tree module that uses it, and the old name is gone anyway.
If anybody actually needs the symbol, they can ask or they can just use
anon_inode_create_getfile(), which will be exported very soon for use
in KVM.

Suggested-by: Christian Brauner <brauner@kernel.org>
Reviewed-by: Christian Brauner <brauner@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
fs/anon_inodes.c
fs/userfaultfd.c
include/linux/anon_inodes.h
io_uring/io_uring.c