Home

Description

In the Linux kernel, the following vulnerability has been resolved: btrfs: fix BUG_ON condition in btrfs_cancel_balance Pausing and canceling balance can race to interrupt balance lead to BUG_ON panic in btrfs_cancel_balance. The BUG_ON condition in btrfs_cancel_balance does not take this race scenario into account. However, the race condition has no other side effects. We can fix that. Reproducing it with panic trace like this: kernel BUG at fs/btrfs/volumes.c:4618! RIP: 0010:btrfs_cancel_balance+0x5cf/0x6a0 Call Trace: <TASK> ? do_nanosleep+0x60/0x120 ? hrtimer_nanosleep+0xb7/0x1a0 ? sched_core_clone_cookie+0x70/0x70 btrfs_ioctl_balance_ctl+0x55/0x70 btrfs_ioctl+0xa46/0xd20 __x64_sys_ioctl+0x7d/0xa0 do_syscall_64+0x38/0x80 entry_SYSCALL_64_after_hwframe+0x63/0xcd Race scenario as follows: > mutex_unlock(&fs_info->balance_mutex); > -------------------- > .......issue pause and cancel req in another thread > -------------------- > ret = __btrfs_balance(fs_info); > > mutex_lock(&fs_info->balance_mutex); > if (ret == -ECANCELED && atomic_read(&fs_info->balance_pause_req)) { > btrfs_info(fs_info, "balance: paused"); > btrfs_exclop_balance(fs_info, BTRFS_EXCLOP_BALANCE_PAUSED); > }

PUBLISHED Reserved 2025-09-16 | Published 2025-09-17 | Updated 2025-09-17 | Assigner Linux

Product status

Default status
unaffected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 7c93b89cd46636b5e74c12fa21dd86167bc6ea8d
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before a0a462a0f20926918d6009f0b4b25673e883fc98
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before bd7bef82ce0e929ef4cf63a34990545aaca28077
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before b966e9e1e250dfdb41a7f41775faea4a37af923c
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before ceb9ba8e30833a4823e2dc73f80ebcdf2498d01a
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before ae81329f7de3aa6f34ecdfa5412e72161a30e9ce
affected

1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 (git) before 29eefa6d0d07e185f7bfe9576f91e6dba98189c2
affected

Default status
affected

4.19.293 (semver)
unaffected

5.4.255 (semver)
unaffected

5.10.192 (semver)
unaffected

5.15.128 (semver)
unaffected

6.1.47 (semver)
unaffected

6.4.12 (semver)
unaffected

6.5 (original_commit_for_fix)
unaffected

References

git.kernel.org/...c/7c93b89cd46636b5e74c12fa21dd86167bc6ea8d

git.kernel.org/...c/a0a462a0f20926918d6009f0b4b25673e883fc98

git.kernel.org/...c/bd7bef82ce0e929ef4cf63a34990545aaca28077

git.kernel.org/...c/b966e9e1e250dfdb41a7f41775faea4a37af923c

git.kernel.org/...c/ceb9ba8e30833a4823e2dc73f80ebcdf2498d01a

git.kernel.org/...c/ae81329f7de3aa6f34ecdfa5412e72161a30e9ce

git.kernel.org/...c/29eefa6d0d07e185f7bfe9576f91e6dba98189c2

cve.org (CVE-2023-53339)

nvd.nist.gov (CVE-2023-53339)

Download JSON