Blame SOURCES/CVE-2021-4155.patch

06f91a
From 01df9f93baafe0243264cf24f42d84e124c9ee0a Mon Sep 17 00:00:00 2001
06f91a
From: Joe Lawrence <joe.lawrence@redhat.com>
06f91a
Date: Tue, 4 Jan 2022 13:53:44 -0500
06f91a
Subject: [KPATCH CVE-2021-4155] xfs: kpatch fixes for CVE-2021-4155
06f91a
06f91a
Kernels:
06f91a
3.10.0-1160.15.2.el7
06f91a
3.10.0-1160.21.1.el7
06f91a
3.10.0-1160.24.1.el7
06f91a
3.10.0-1160.25.1.el7
06f91a
3.10.0-1160.31.1.el7
06f91a
3.10.0-1160.36.2.el7
06f91a
3.10.0-1160.41.1.el7
06f91a
3.10.0-1160.42.2.el7
06f91a
3.10.0-1160.45.1.el7
06f91a
3.10.0-1160.49.1.el7
06f91a
3.10.0-1160.53.1.el7
06f91a
06f91a
Changes since last build:
06f91a
arches: x86_64 ppc64le
06f91a
xfs_ioctl.o: changed function: xfs_ioc_space
06f91a
---------------------------
06f91a
06f91a
Kpatch-MR: https://gitlab.com/redhat/prdsc/rhel/src/kpatch/rhel-7/-/merge_requests/15
06f91a
Approved-by: Yannick Cote (@ycote1)
06f91a
Approved-by: Artem Savkov (@artem.savkov)
06f91a
Kernels:
06f91a
3.10.0-1160.21.1.el7
06f91a
3.10.0-1160.24.1.el7
06f91a
3.10.0-1160.25.1.el7
06f91a
3.10.0-1160.31.1.el7
06f91a
3.10.0-1160.36.2.el7
06f91a
3.10.0-1160.41.1.el7
06f91a
3.10.0-1160.42.2.el7
06f91a
3.10.0-1160.45.1.el7
06f91a
3.10.0-1160.49.1.el7
06f91a
3.10.0-1160.53.1.el7
06f91a
06f91a
Modifications: none
06f91a
06f91a
Z-MR: https://gitlab.com/redhat/prdsc/rhel/src/kernel-private/rhel-7/-/merge_requests/18
06f91a
06f91a
KT0 test PASS: https://beaker.engineering.redhat.com/jobs/6164756
06f91a
for kpatch-patch-3_10_0-1160_15_2-1-11.el7 scratch build:
06f91a
https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=42181339
06f91a
06f91a
commit 65cb42abca9a5a600cbbdbbef8ddbafd028b7b5d
06f91a
Author: Carlos Maiolino <cmaiolino@redhat.com>
06f91a
Date:   Tue Jan 4 08:29:12 2022 +0100
06f91a
06f91a
    xfs: map unwritten blocks in XFS_IOC_{ALLOC,FREE}SP just like fallocate
06f91a
06f91a
    Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2034857
06f91a
    CVE: CVE-2021-4155
06f91a
    Tested: xfstests and specific reproducer
06f91a
    Upstream status: Posted privately due to embargo
06f91a
06f91a
    Conflicts:
06f91a
            - el7 required small adjustment to the patch, to fit the old
06f91a
              code.
06f91a
06f91a
    The old ALLOCSP/FREESP ioctls in XFS can be used to preallocate space at
06f91a
    the end of files, just like fallocate and RESVSP.  Make the behavior
06f91a
    consistent with the other ioctls.
06f91a
06f91a
    Reported-by: Kirill Tkhai <ktkhai@virtuozzo.com>
06f91a
    Signed-off-by: Darrick J. Wong <djwong@kernel.org>
06f91a
    Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
06f91a
    Reviewed-by: Dave Chinner <dchinner@redhat.com>
06f91a
    Reviewed-by: Eric Sandeen <sandeen@redhat.com>
06f91a
    (cherry picked from commit 983d8e60f50806f90534cc5373d0ce867e5aaf79)
06f91a
06f91a
    Signed-off-by: Carlos Maiolino <cmaiolino@redhat.com>
06f91a
06f91a
Signed-off-by: Joe Lawrence <joe.lawrence@redhat.com>
06f91a
---
06f91a
 fs/xfs/xfs_ioctl.c | 3 ++-
06f91a
 1 file changed, 2 insertions(+), 1 deletion(-)
06f91a
06f91a
diff --git a/fs/xfs/xfs_ioctl.c b/fs/xfs/xfs_ioctl.c
06f91a
index 722396680482..8f1c795c8765 100644
06f91a
--- a/fs/xfs/xfs_ioctl.c
06f91a
+++ b/fs/xfs/xfs_ioctl.c
06f91a
@@ -773,7 +773,8 @@ xfs_ioc_space(
06f91a
 		flags |= XFS_PREALLOC_CLEAR;
06f91a
 		if (bf->l_start > XFS_ISIZE(ip)) {
06f91a
 			error = xfs_alloc_file_space(ip, XFS_ISIZE(ip),
06f91a
-					bf->l_start - XFS_ISIZE(ip), 0);
06f91a
+					bf->l_start - XFS_ISIZE(ip),
06f91a
+					XFS_BMAPI_PREALLOC);
06f91a
 			if (error)
06f91a
 				goto out_unlock;
06f91a
 		}
06f91a
-- 
06f91a
2.26.3
06f91a
06f91a