From 1812de14f04848daa354f99e9240e0f7c643718c Mon Sep 17 00:00:00 2001 From: Al Viro Date: Wed, 3 May 2023 16:50:18 -0400 Subject: [PATCH] secretmem: move setting O_LARGEFILE and bumping users' count to the place where we create the file Acked-by: Andrew Morton Acked-by: Mike Rapoport (Microsoft) Signed-off-by: Al Viro --- mm/secretmem.c | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/mm/secretmem.c b/mm/secretmem.c index 589b26c2d553c..ef4922baa1cdd 100644 --- a/mm/secretmem.c +++ b/mm/secretmem.c @@ -208,7 +208,7 @@ static struct file *secretmem_file_create(unsigned long flags) } file = alloc_file_pseudo(inode, secretmem_mnt, "secretmem", - O_RDWR, &secretmem_fops); + O_RDWR | O_LARGEFILE, &secretmem_fops); if (IS_ERR(file)) goto err_free_inode; @@ -222,6 +222,8 @@ static struct file *secretmem_file_create(unsigned long flags) inode->i_mode |= S_IFREG; inode->i_size = 0; + atomic_inc(&secretmem_users); + return file; err_free_inode: @@ -255,9 +257,6 @@ SYSCALL_DEFINE1(memfd_secret, unsigned int, flags) goto err_put_fd; } - file->f_flags |= O_LARGEFILE; - - atomic_inc(&secretmem_users); fd_install(fd, file); return fd; -- 2.47.2