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