summaryrefslogtreecommitdiff
path: root/fs
diff options
context:
space:
mode:
authorDarrick J. Wong <djwong@kernel.org>2023-02-15 04:51:35 +0300
committerDarrick J. Wong <djwong@kernel.org>2023-02-15 04:51:35 +0300
commit60b730a40c43fbcc034970d3e77eb0f25b8cc1cf (patch)
tree1cc0412a9c4352035ccc7f060950f7a472f1cc55 /fs
parent571dc9ae4eefb452d32cfb3761a87089e8f37ca7 (diff)
downloadlinux-60b730a40c43fbcc034970d3e77eb0f25b8cc1cf.tar.xz
xfs: fix uninitialized variable access
If the end position of a GETFSMAP query overlaps an allocated space and we're using the free space info to generate fsmap info, the akeys information gets fed into the fsmap formatter with bad results. Zero-init the space. Reported-by: syzbot+090ae72d552e6bd93cfe@syzkaller.appspotmail.com Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/xfs_fsmap.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_fsmap.c b/fs/xfs/xfs_fsmap.c
index 120d284a03fe..59e7d1a14b67 100644
--- a/fs/xfs/xfs_fsmap.c
+++ b/fs/xfs/xfs_fsmap.c
@@ -761,6 +761,7 @@ xfs_getfsmap_datadev_bnobt(
{
struct xfs_alloc_rec_incore akeys[2];
+ memset(akeys, 0, sizeof(akeys));
info->missing_owner = XFS_FMR_OWN_UNKNOWN;
return __xfs_getfsmap_datadev(tp, keys, info,
xfs_getfsmap_datadev_bnobt_query, &akeys[0]);