CVE-2024-56565

Source
https://cve.org/CVERecord?id=CVE-2024-56565
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-56565.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2024-56565
Downstream
Related
Published
2024-12-27T14:23:09.350Z
Modified
2026-03-11T05:29:00.378033Z
Summary
f2fs: fix to drop all discards after creating snapshot on lvm device
Details

In the Linux kernel, the following vulnerability has been resolved:

f2fs: fix to drop all discards after creating snapshot on lvm device

Piergiorgio reported a bug in bugzilla as below:

------------[ cut here ]------------ WARNING: CPU: 2 PID: 969 at fs/f2fs/segment.c:1330 RIP: 0010:__submitdiscardcmd+0x27d/0x400 [f2fs] Call Trace: _issuediscardcmd+0x1ca/0x350 [f2fs] issuediscardthread+0x191/0x480 [f2fs] kthread+0xcf/0x100 retfromfork+0x31/0x50 retfromforkasm+0x1a/0x30

w/ below testcase, it can reproduce this bug quickly: - pvcreate /dev/vdb - vgcreate myvg1 /dev/vdb - lvcreate -L 1024m -n mylv1 myvg1 - mount /dev/myvg1/mylv1 /mnt/f2fs - dd if=/dev/zero of=/mnt/f2fs/file bs=1M count=20 - sync - rm /mnt/f2fs/file - sync - lvcreate -L 1024m -s -n mylv1-snapshot /dev/myvg1/mylv1 - umount /mnt/f2fs

The root cause is: it will update discardmaxbytes of mounted lvm device to zero after creating snapshot on this lvm device, then, __submitdiscardcmd() will pass parameter @nr_sects w/ zero value to __blkdevissuediscard(), it returns a NULL bio pointer, result in panic.

This patch changes as below for fixing: 1. Let's drop all remained discards in f2fsunfreeze() if snapshot of lvm device is created. 2. Checking discardmax_bytes before submitting discard during __submitdiscardcmd().

Database specific
{
    "cna_assigner": "Linux",
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2024/56xxx/CVE-2024-56565.json"
}
References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
35ec7d5748849762008e8ae9f8ad2766229d5794
Fixed
ed24ab98242f8d22b66fbe0452c97751b5ea4e22
Fixed
15136c3861a3341db261ebdbb6ae4ae1765635e2
Fixed
bc8aeb04fd80cb8cfae3058445c84410fd0beb5e

Database specific

source
"https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2024-56565.json"