diff options
| author | Christian Brauner <brauner@kernel.org> | 2025-11-23 17:33:44 +0100 |
|---|---|---|
| committer | Christian Brauner <brauner@kernel.org> | 2025-11-28 12:42:34 +0100 |
| commit | 910c361f9a1f41397b82d679802c1806cdd960fe (patch) | |
| tree | 313699ce3ef6ed58b87a0ee38620dbb1ef801844 /mm | |
| parent | 1afcbbe5d65617a3f2f6338effa9e0f21082912b (diff) | |
secretmem: convert memfd_secret() to FD_ADD()
Link: https://patch.msgid.link/20251123-work-fd-prepare-v4-26-b6efa1706cfd@kernel.org
Signed-off-by: Christian Brauner <brauner@kernel.org>
Diffstat (limited to 'mm')
| -rw-r--r-- | mm/secretmem.c | 20 |
1 files changed, 1 insertions, 19 deletions
diff --git a/mm/secretmem.c b/mm/secretmem.c index 60137305bc20..eb950f8193c9 100644 --- a/mm/secretmem.c +++ b/mm/secretmem.c @@ -224,9 +224,6 @@ err_free_inode: SYSCALL_DEFINE1(memfd_secret, unsigned int, flags) { - struct file *file; - int fd, err; - /* make sure local flags do not confict with global fcntl.h */ BUILD_BUG_ON(SECRETMEM_FLAGS_MASK & O_CLOEXEC); @@ -238,22 +235,7 @@ SYSCALL_DEFINE1(memfd_secret, unsigned int, flags) if (atomic_read(&secretmem_users) < 0) return -ENFILE; - fd = get_unused_fd_flags(flags & O_CLOEXEC); - if (fd < 0) - return fd; - - file = secretmem_file_create(flags); - if (IS_ERR(file)) { - err = PTR_ERR(file); - goto err_put_fd; - } - - fd_install(fd, file); - return fd; - -err_put_fd: - put_unused_fd(fd); - return err; + return FD_ADD(flags & O_CLOEXEC, secretmem_file_create(flags)); } static int secretmem_init_fs_context(struct fs_context *fc) |