CVE-2022-49033

btrfs: qgroup: fix sleep from invalid context bug in btrfs_qgroup_inherit()

State
Published
Severity
Not scored
Published
Oct 21, 2024
Updated
May 11, 2026
Reserved
Aug 22, 2024

Read the record on cve.org

Description

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

btrfs: qgroup: fix sleep from invalid context bug in btrfs_qgroup_inherit()

Syzkaller reported BUG as follows:

BUG: sleeping function called from invalid context at include/linux/sched/mm.h:274 Call Trace: <TASK> dump_stack_lvl+0xcd/0x134 __might_resched.cold+0x222/0x26b kmem_cache_alloc+0x2e7/0x3c0 update_qgroup_limit_item+0xe1/0x390 btrfs_qgroup_inherit+0x147b/0x1ee0 create_subvol+0x4eb/0x1710 btrfs_mksubvol+0xfe5/0x13f0 __btrfs_ioctl_snap_create+0x2b0/0x430 btrfs_ioctl_snap_create_v2+0x25a/0x520 btrfs_ioctl+0x2a1c/0x5ce0 __x64_sys_ioctl+0x193/0x200 do_syscall_64+0x35/0x80

Fix this by calling qgroup_dirty() on @dstqgroup, and update limit item in btrfs_run_qgroups() later outside of the spinlock context.

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 89840b12c8fad7200eb6478525c13261512c01beAffected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 3c98e91be6aea4c7acf09da6eb0c107ea9186bb5Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before f4b930a1602b05e77fee31f9616599b25e910a86Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 8eb912af525042a7365295eb62f6d5270c2a6462Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 01d7c41eac9129fba80d8aed0060caab4a7dbe09Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 044da1a371a0da579e805e89c96865f62d8f6f69Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before 588ae4fdd8b11788a797776b10d6c44ae12bc133Affected
  • e8c8541ac379709db8d2339e1cb720469fc2cd8f to before f7e942b5bb35d8e3af54053d19a6bf04143a3955Affected
LinuxLinux
  • 4.1Affected
  • before 4.1Not affected
  • 4.9.335 through 4.9.*Not affected
  • 4.14.301 through 4.14.*Not affected
  • 4.19.268 through 4.19.*Not affected
  • 5.4.226 through 5.4.*Not affected
  • 5.10.158 through 5.10.*Not affected
  • 5.15.82 through 5.15.*Not affected
  • 6.0.12 through 6.0.*Not affected
  • 6.1 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.