CVE-2024-36908

blk-iocost: do not WARN if iocg was already offlined

State
Published
Severity
7.1 High
Published
May 30, 2024
Updated
May 11, 2026
Reserved
May 30, 2024

Read the record on cve.org

Description

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

blk-iocost: do not WARN if iocg was already offlined

In iocg_pay_debt(), warn is triggered if 'active_list' is empty, which is intended to confirm iocg is active when it has debt. However, warn can be triggered during a blkcg or disk removal, if iocg_waitq_timer_fn() is run at that time:

WARNING: CPU: 0 PID: 2344971 at block/blk-iocost.c:1402 iocg_pay_debt+0x14c/0x190 Call trace: iocg_pay_debt+0x14c/0x190 iocg_kick_waitq+0x438/0x4c0 iocg_waitq_timer_fn+0xd8/0x130 __run_hrtimer+0x144/0x45c __hrtimer_run_queues+0x16c/0x244 hrtimer_interrupt+0x2cc/0x7b0

The warn in this situation is meaningless. Since this iocg is being removed, the state of the 'active_list' is irrelevant, and 'waitq_timer' is canceled after removing 'active_list' in ioc_pd_free(), which ensures iocg is freed after iocg_waitq_timer_fn() returns.

Therefore, add the check if iocg was already offlined to avoid warn when removing a blkcg or disk.

Scores

CVSSScoreVectorSource
3.17.1 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:HCISA-ADP

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before 56a9d07f427378eeb75b917bb49c6fbea8204126Affected
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before 7d215e013d097ed6fc4b0ad0272c9514214dc408Affected
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before aed0aac18f039dd4af13c143063754efca358cb0Affected
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before 1c172ac7afe4442964f4153b2c78fe4e005d9d67Affected
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before 14b3275f93d4a0d8ddc02195bc4e9869b7a3700eAffected
  • 7caa47151ab2e644dd221f741ec7578d9532c9a3 to before 01bc4fda9ea0a6b52f12326486f07a4910666cf6Affected
LinuxLinux
  • 5.4Affected
  • before 5.4Not affected
  • 5.10.237 through 5.10.*Not affected
  • 5.15.181 through 5.15.*Not affected
  • 6.1.135 through 6.1.*Not affected
  • 6.6.31 through 6.6.*Not affected
  • 6.8.10 through 6.8.*Not affected
  • 6.9 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.