From bc1189971b012d3d8aaa355889411d44cc335304 Mon Sep 17 00:00:00 2001 From: Josef Bacik Date: Sun, 29 Sep 2024 14:10:08 +0800 Subject: [PATCH] btrfs: don't BUG_ON on ENOMEM from btrfs_lookup_extent_info() in walk_down_proc() mainline inclusion from mainline-v6.11-rc1 commit a580fb2c3479d993556e1c31b237c9e5be4944a3 category: bugfix bugzilla: https://gitee.com/src-openeuler/kernel/issues/IAU9LZ CVE: CVE-2024-46841 Reference: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=a580fb2c3479d993556e1c31b237c9e5be4944a3 -------------------------------- We handle errors here properly, ENOMEM isn't fatal, return the error. Signed-off-by: Josef Bacik Reviewed-by: David Sterba Signed-off-by: David Sterba Conflicts: fs/btrfs/extent-tree.c [Context difference.] Signed-off-by: Yifan Qiao --- fs/btrfs/extent-tree.c | 1 - 1 file changed, 1 deletion(-) diff --git a/fs/btrfs/extent-tree.c b/fs/btrfs/extent-tree.c index 9521cb45433f..36cc5fa683df 100644 --- a/fs/btrfs/extent-tree.c +++ b/fs/btrfs/extent-tree.c @@ -4871,7 +4871,6 @@ static noinline int walk_down_proc(struct btrfs_trans_handle *trans, eb->start, level, 1, &wc->refs[level], &wc->flags[level]); - BUG_ON(ret == -ENOMEM); if (ret) return ret; BUG_ON(wc->refs[level] == 0); -- Gitee