[<prev] [next>] [day] [month] [year] [list]
Message-ID: <2024031508-CVE-2021-47117-5ea7@gregkh>
Date: Fri, 15 Mar 2024 21:15:07 +0100
From: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
To: linux-cve-announce@...r.kernel.org
Cc: Greg Kroah-Hartman <gregkh@...uxfoundation.org>
Subject: CVE-2021-47117: ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed
Description
===========
In the Linux kernel, the following vulnerability has been resolved:
ext4: fix bug on in ext4_es_cache_extent as ext4_split_extent_at failed
We got follow bug_on when run fsstress with injecting IO fault:
[130747.323114] kernel BUG at fs/ext4/extents_status.c:762!
[130747.323117] Internal error: Oops - BUG: 0 [#1] SMP
.....
[130747.334329] Call trace:
[130747.334553] ext4_es_cache_extent+0x150/0x168 [ext4]
[130747.334975] ext4_cache_extents+0x64/0xe8 [ext4]
[130747.335368] ext4_find_extent+0x300/0x330 [ext4]
[130747.335759] ext4_ext_map_blocks+0x74/0x1178 [ext4]
[130747.336179] ext4_map_blocks+0x2f4/0x5f0 [ext4]
[130747.336567] ext4_mpage_readpages+0x4a8/0x7a8 [ext4]
[130747.336995] ext4_readpage+0x54/0x100 [ext4]
[130747.337359] generic_file_buffered_read+0x410/0xae8
[130747.337767] generic_file_read_iter+0x114/0x190
[130747.338152] ext4_file_read_iter+0x5c/0x140 [ext4]
[130747.338556] __vfs_read+0x11c/0x188
[130747.338851] vfs_read+0x94/0x150
[130747.339110] ksys_read+0x74/0xf0
This patch's modification is according to Jan Kara's suggestion in:
https://patchwork.ozlabs.org/project/linux-ext4/patch/20210428085158.3728201-1-yebin10@huawei.com/
"I see. Now I understand your patch. Honestly, seeing how fragile is trying
to fix extent tree after split has failed in the middle, I would probably
go even further and make sure we fix the tree properly in case of ENOSPC
and EDQUOT (those are easily user triggerable). Anything else indicates a
HW problem or fs corruption so I'd rather leave the extent tree as is and
don't try to fix it (which also means we will not create overlapping
extents)."
The Linux kernel CVE team has assigned CVE-2021-47117 to this issue.
Affected and fixed versions
===========================
Fixed in 4.4.272 with commit e33bafad30d3
Fixed in 4.9.272 with commit 5b3a9a2be594
Fixed in 4.14.236 with commit d8116743ef54
Fixed in 4.19.194 with commit 569496aa3776
Fixed in 5.4.125 with commit 920697b004e4
Fixed in 5.10.43 with commit d3b668b96ad3
Fixed in 5.12.10 with commit 48105dc98c9c
Fixed in 5.13 with commit 082cd4ec240b
Please see https://www.kernel.org or a full list of currently supported
kernel versions by the kernel community.
Unaffected versions might change over time as fixes are backported to
older supported kernel versions. The official CVE entry at
https://cve.org/CVERecord/?id=CVE-2021-47117
will be updated if fixes are backported, please check that for the most
up to date information about this issue.
Affected files
==============
The file(s) affected by this issue are:
fs/ext4/extents.c
Mitigation
==========
The Linux kernel CVE team recommends that you update to the latest
stable kernel version for this, and many other bugfixes. Individual
changes are never tested alone, but rather are part of a larger kernel
release. Cherry-picking individual commits is not recommended or
supported by the Linux kernel community at all. If however, updating to
the latest release is impossible, the individual changes to resolve this
issue can be found at these commits:
https://git.kernel.org/stable/c/e33bafad30d34cfa5e9787cb099cab05e2677fcb
https://git.kernel.org/stable/c/5b3a9a2be59478b013a430ac57b0f3d65471b071
https://git.kernel.org/stable/c/d8116743ef5432336289256b2f7c117299213eb9
https://git.kernel.org/stable/c/569496aa3776eea1ff0d49d0174ac1b7e861e107
https://git.kernel.org/stable/c/920697b004e49cb026e2e15fe91be065bf0741b7
https://git.kernel.org/stable/c/d3b668b96ad3192c0581a248ae2f596cd054792a
https://git.kernel.org/stable/c/48105dc98c9ca35af418746277b087cb2bc6df7c
https://git.kernel.org/stable/c/082cd4ec240b8734a82a89ffb890216ac98fec68
Powered by blists - more mailing lists