First published: Mon Oct 21 2024(Updated: )
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.
Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Linux kernel | <4.14.301 | |
Linux Linux kernel | >=4.15<4.19.268 | |
Linux Linux kernel | >=4.20<5.4.226 | |
Linux Linux kernel | >=5.5<5.10.158 | |
Linux Linux kernel | >=5.11<5.15.82 | |
Linux Linux kernel | >=5.16<6.0.12 | |
Linux Linux kernel | =6.1-rc1 | |
Linux Linux kernel | =6.1-rc2 | |
Linux Linux kernel | =6.1-rc3 | |
Linux Linux kernel | =6.1-rc4 | |
Linux Linux kernel | =6.1-rc5 | |
Linux Linux kernel | =6.1-rc6 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.