f2fs: fix to drop meta_inode's page cache in f2fs_put_super()
Published May 21, 2024
5.5
MEDIUMCVSS 3.1
EPSS 0.24%
Description
syzbot reports a kernel bug as below:
F2FS-fs (loop1): detect filesystem reference count leak during umount, type: 10, count: 1 kernel BUG at fs/f2fs/super.c:1639! CPU: 0 PID: 15451 Comm: syz-executor.1 Not tainted 6.5.0-syzkaller-09338-ge0152e7481c6 #0 RIP: 0010:f2fs_put_super+0xce1/0xed0 fs/f2fs/super.c:1639 Call Trace: generic_shutdown_super+0x161/0x3c0 fs/super.c:693 kill_block_super+0x3b/0x70 fs/super.c:1646 kill_f2fs_super+0x2b7/0x3d0 fs/f2fs/super.c:4879 deactivate_locked_super+0x9a/0x170 fs/super.c:481 deactivate_super+0xde/0x100 fs/super.c:514 cleanup_mnt+0x222/0x3d0 fs/namespace.c:1254 task_work_run+0x14d/0x240 kernel/task_work.c:179 resume_user_mode_work include/linux/resume_user_mode.h:49 [inline] exit_to_user_mode_loop kernel/entry/common.c:171 [inline] exit_to_user_mode_prepare+0x210/0x240 kernel/entry/common.c:204 __syscall_exit_to_user_mode_work kernel/entry/common.c:285 [inline] syscall_exit_to_user_mode+0x1d/0x60 kernel/entry/common.c:296 do_syscall_64+0x44/0xb0 arch/x86/entry/common.c:86 entry_SYSCALL_64_after_hwframe+0x63/0xcd
In f2fs_put_super(), it tries to do sanity check on dirty and IO reference count of f2fs, once there is any reference count leak, it will trigger panic.
The root case is, during f2fs_put_super(), if there is any IO error in f2fs_wait_on_all_pages(), we missed to truncate meta_inode's page cache later, result in panic, fix this case.
Affected products
-
Affected
- ≥ , <
- ≥ , <
- ≥ , <
-
Affected
- 6.5
Unaffected
- ≥ 0, < 6.5
- ≥ 6.5.12, ≤ 6.5.*
- ≥ 6.6.2, ≤ 6.6.*
- 6.7
Default status is the baseline for the product. Each version can override it (patched versions can be marked unaffected).
- ≥ 6.4.16 · < 6.5.12
- ≥ 6.6 · < 6.6.2
No data.
Red Hat Enterprise Linux 6
kernel
Out of support scope
Red Hat Enterprise Linux 7
kernel
Out of support scope
Red Hat Enterprise Linux 7
kernel-rt
Out of support scope
Red Hat Enterprise Linux 8
kernel
Not affected
Red Hat Enterprise Linux 8
kernel-rt
Not affected
Red Hat Enterprise Linux 9
kernel
Not affected
Red Hat Enterprise Linux 9
kernel-rt
Not affected
| Product | Package | State | Advisory |
|---|---|---|---|
| Red Hat Enterprise Linux 6 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 7 | kernel | Out of support scope | n/a |
| Red Hat Enterprise Linux 7 | kernel-rt | Out of support scope | n/a |
| Red Hat Enterprise Linux 8 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 8 | kernel-rt | Not affected | n/a |
| Red Hat Enterprise Linux 9 | kernel | Not affected | n/a |
| Red Hat Enterprise Linux 9 | kernel-rt | Not affected | n/a |
No package ranges for this CVE.
Remediation
No remediation recorded yet.
References (9)
- https://access.redhat.com/security/cve/CVE-2023-52848 Vendor Advisory
- https://bugzilla.redhat.com/show_bug.cgi?id=2282721 Issue Tracking
- https://euvd.enisa.europa.eu/vulnerability/EUVD-2023-59561 Advisory
- https://git.kernel.org/stable/c/10b2a6c0dade67b5a2b2d17fb75c457ea1985fad Patch
- https://git.kernel.org/stable/c/a4639380bbe66172df329f8b54aa7d2e943f0f64 Patch
- https://git.kernel.org/stable/c/eb42e1862aa7934c2c21890097ce4993c5e0d192 Patch
- https://lore.kernel.org/linux-cve-announce/2024052113-CVE-2023-52848-a5fa@gregkh/T
- https://nvd.nist.gov/vuln/detail/CVE-2023-52848
- https://www.cve.org/CVERecord?id=CVE-2023-52848
Change history (0)
No recorded changes yet.
CVE.org / MITRE
CISA Vulnrichment
GitHub
No data