Andrew Morton
2023-May-31 22:14 UTC
[Ocfs2-devel] + ocfs2-check-new-file-size-on-fallocate-call.patch added to mm-nonmm-unstable branch
The patch titled Subject: ocfs2: check new file size on fallocate call has been added to the -mm mm-nonmm-unstable branch. Its filename is ocfs2-check-new-file-size-on-fallocate-call.patch This patch will shortly appear at https://git.kernel.org/pub/scm/linux/kernel/git/akpm/25-new.git/tree/patches/ocfs2-check-new-file-size-on-fallocate-call.patch This patch will later appear in the mm-nonmm-unstable branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next via the mm-everything branch at git://git.kernel.org/pub/scm/linux/kernel/git/akpm/mm and is updated there every 2-3 working days ------------------------------------------------------ From: Lu??s Henriques <ocfs2-devel at oss.oracle.com> Subject: ocfs2: check new file size on fallocate call Date: Mon, 29 May 2023 16:26:45 +0100 When changing a file size with fallocate() the new size isn't being checked. In particular, the FSIZE ulimit isn't being checked, which makes fstest generic/228 fail. Simply adding a call to inode_newsize_ok() fixes this issue. Link: https://lkml.kernel.org/r/20230529152645.32680-1-lhenriques at suse.de Signed-off-by: Lu??s Henriques <lhenriques at suse.de> Reviewed-by: Mark Fasheh <mark at fasheh.com> Reviewed-by: Joseph Qi <joseph.qi at linux.alibaba.com> Cc: Joel Becker <jlbec at evilplan.org> Cc: Junxiao Bi <junxiao.bi at oracle.com> Cc: Changwei Ge <gechangwei at live.cn> Cc: Gang He <ghe at suse.com> Cc: Jun Piao <piaojun at huawei.com> Signed-off-by: Andrew Morton <akpm at linux-foundation.org> --- fs/ocfs2/file.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) --- a/fs/ocfs2/file.c~ocfs2-check-new-file-size-on-fallocate-call +++ a/fs/ocfs2/file.c @@ -2100,14 +2100,20 @@ static long ocfs2_fallocate(struct file struct ocfs2_space_resv sr; int change_size = 1; int cmd = OCFS2_IOC_RESVSP64; + int ret = 0; if (mode & ~(FALLOC_FL_KEEP_SIZE | FALLOC_FL_PUNCH_HOLE)) return -EOPNOTSUPP; if (!ocfs2_writes_unwritten_extents(osb)) return -EOPNOTSUPP; - if (mode & FALLOC_FL_KEEP_SIZE) + if (mode & FALLOC_FL_KEEP_SIZE) { change_size = 0; + } else { + ret = inode_newsize_ok(inode, offset + len); + if (ret) + return ret; + } if (mode & FALLOC_FL_PUNCH_HOLE) cmd = OCFS2_IOC_UNRESVSP64; _ Patches currently in -mm which might be from ocfs2-devel at oss.oracle.com are ocfs2-fix-use-after-free-when-unmounting-read-only-filesystem.patch ocfs2-check-new-file-size-on-fallocate-call.patch
Apparently Analagous Threads
- Patch "ocfs2: check new file size on fallocate call" has been added to the 6.1-stable tree
- Patch "ocfs2: check new file size on fallocate call" has been added to the 6.3-stable tree
- Patch "ocfs2: check new file size on fallocate call" has been added to the 4.14-stable tree
- Patch "ocfs2: check new file size on fallocate call" has been added to the 4.19-stable tree
- Patch "ocfs2: check new file size on fallocate call" has been added to the 5.4-stable tree