Skip to content
OpenAdvisories
Unscored CVE-2021-47379 EUVD-2021-34384GHSA-w9cr-rpv2-57qv

blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd

Published May 21, 2024 · Updated May 23, 2026 · Assigned by Linux

Vendor: Linux Product: Linux Package: linux Package: linux Package: linux-allwinner-5.19 Package: linux-aws Package: linux-aws-5.0 Package: linux-aws-5.11 Package: linux-aws-5.13 Package: linux-aws-5.19 Package: linux-aws-5.3 Package: linux-aws-5.4 Package: linux-aws-5.8 Package: linux-aws-6.2 Package: linux-aws-fips Package: linux-aws-hwe Package: linux-azure Package: linux-azure-4.15 Package: linux-azure-5.11 Package: linux-azure-5.13 Package: linux-azure-5.19 Package: linux-azure-5.3 Package: linux-azure-5.4 Package: linux-azure-5.8 Package: linux-azure-6.2 Package: linux-azure-edge Package: linux-azure-fde Package: linux-azure-fde-5.19 Package: linux-azure-fde-6.2 Package: linux-azure-fips Package: linux-bluefield Package: linux-fips Package: linux-gcp Package: linux-gcp-4.15 Package: linux-gcp-5.11 Package: linux-gcp-5.13 Package: linux-gcp-5.19 Package: linux-gcp-5.3 Package: linux-gcp-5.4 Package: linux-gcp-5.8 Package: linux-gcp-6.2 Package: linux-gcp-fips Package: linux-gke Package: linux-gke-4.15 Package: linux-gke-5.15 Package: linux-gke-5.4 Package: linux-gkeop Package: linux-gkeop-5.4 Package: linux-hwe Package: linux-hwe-5.11 Package: linux-hwe-5.13 Package: linux-hwe-5.19 Package: linux-hwe-5.4 Package: linux-hwe-5.8 Package: linux-hwe-6.2 Package: linux-hwe-edge Package: linux-ibm Package: linux-intel-5.13 Package: linux-intel-iot-realtime Package: linux-kvm Package: linux-lowlatency-hwe-5.19 Package: linux-lowlatency-hwe-6.2 Package: linux-nvidia-6.2 Package: linux-oem Package: linux-oem-5.10 Package: linux-oem-5.13 Package: linux-oem-5.14 Package: linux-oem-5.17 Package: linux-oem-5.6 Package: linux-oem-6.0 Package: linux-oem-6.1 Package: linux-oracle Package: linux-oracle-5.0 Package: linux-oracle-5.11 Package: linux-oracle-5.13 Package: linux-oracle-5.3 Package: linux-oracle-5.4 Package: linux-oracle-5.8 Package: linux-raspi Package: linux-raspi-5.4 Package: linux-raspi-realtime Package: linux-raspi2 Package: linux-realtime Package: linux-riscv Package: linux-riscv-5.11 Package: linux-riscv-5.19 Package: linux-riscv-5.8 Package: linux-starfive-5.19 Package: linux-starfive-6.2 Package: linux-vmware Platform: Linux Ecosystem: Debian Ecosystem: Ubuntu

Description

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

blk-cgroup: fix UAF by grabbing blkcg lock before destroying blkg pd

KASAN reports a use-after-free report when doing fuzz test:

[693354.104835] ==================================================================
[693354.105094] BUG: KASAN: use-after-free in bfq_io_set_weight_legacy+0xd3/0x160
[693354.105336] Read of size 4 at addr ffff888be0a35664 by task sh/1453338

[693354.105607] CPU: 41 PID: 1453338 Comm: sh Kdump: loaded Not tainted 4.18.0-147
[693354.105610] Hardware name: Huawei 2288H V5/BC11SPSCB0, BIOS 0.81 07/02/2018
[693354.105612] Call Trace:
[693354.105621] dump_stack+0xf1/0x19b
[693354.105626] ? show_regs_print_info+0x5/0x5
[693354.105634] ? printk+0x9c/0xc3
[693354.105638] ? cpumask_weight+0x1f/0x1f
[693354.105648] print_address_description+0x70/0x360
[693354.105654] kasan_report+0x1b2/0x330
[693354.105659] ? bfq_io_set_weight_legacy+0xd3/0x160
[693354.105665] ? bfq_io_set_weight_legacy+0xd3/0x160
[693354.105670] bfq_io_set_weight_legacy+0xd3/0x160
[693354.105675] ? bfq_cpd_init+0x20/0x20
[693354.105683] cgroup_file_write+0x3aa/0x510
[693354.105693] ? ___slab_alloc+0x507/0x540
[693354.105698] ? cgroup_file_poll+0x60/0x60
[693354.105702] ? 0xffffffff89600000
[693354.105708] ? usercopy_abort+0x90/0x90
[693354.105716] ? mutex_lock+0xef/0x180
[693354.105726] kernfs_fop_write+0x1ab/0x280
[693354.105732] ? cgroup_file_poll+0x60/0x60
[693354.105738] vfs_write+0xe7/0x230
[693354.105744] ksys_write+0xb0/0x140
[693354.105749] ? __ia32_sys_read+0x50/0x50
[693354.105760] do_syscall_64+0x112/0x370
[693354.105766] ? syscall_return_slowpath+0x260/0x260
[693354.105772] ? do_page_fault+0x9b/0x270
[693354.105779] ? prepare_exit_to_usermode+0xf9/0x1a0
[693354.105784] ? enter_from_user_mode+0x30/0x30
[693354.105793] entry_SYSCALL_64_after_hwframe+0x65/0xca

[693354.105875] Allocated by task 1453337:
[693354.106001] kasan_kmalloc+0xa0/0xd0
[693354.106006] kmem_cache_alloc_node_trace+0x108/0x220
[693354.106010] bfq_pd_alloc+0x96/0x120
[693354.106015] blkcg_activate_policy+0x1b7/0x2b0
[693354.106020] bfq_create_group_hierarchy+0x1e/0x80
[693354.106026] bfq_init_queue+0x678/0x8c0
[693354.106031] blk_mq_init_sched+0x1f8/0x460
[693354.106037] elevator_switch_mq+0xe1/0x240
[693354.106041] elevator_switch+0x25/0x40
[693354.106045] elv_iosched_store+0x1a1/0x230
[693354.106049] queue_attr_store+0x78/0xb0
[693354.106053] kernfs_fop_write+0x1ab/0x280
[693354.106056] vfs_write+0xe7/0x230
[693354.106060] ksys_write+0xb0/0x140
[693354.106064] do_syscall_64+0x112/0x370
[693354.106069] entry_SYSCALL_64_after_hwframe+0x65/0xca

[693354.106114] Freed by task 1453336:
[693354.106225] __kasan_slab_free+0x130/0x180
[693354.106229] kfree+0x90/0x1b0
[693354.106233] blkcg_deactivate_policy+0x12c/0x220
[693354.106238] bfq_exit_queue+0xf5/0x110
[693354.106241] blk_mq_exit_sched+0x104/0x130
[693354.106245] __elevator_exit+0x45/0x60
[693354.106249] elevator_switch_mq+0xd6/0x240
[693354.106253] elevator_switch+0x25/0x40
[693354.106257] elv_iosched_store+0x1a1/0x230
[693354.106261] queue_attr_store+0x78/0xb0
[693354.106264] kernfs_fop_write+0x1ab/0x280
[693354.106268] vfs_write+0xe7/0x230
[693354.106271] ksys_write+0xb0/0x140
[693354.106275] do_syscall_64+0x112/0x370
[693354.106280] entry_SYSCALL_64_after_hwframe+0x65/0xca

[693354.106329] The buggy address belongs to the object at ffff888be0a35580
which belongs to the cache kmalloc-1k of size 1024
[693354.106736] The buggy address is located 228 bytes inside of
1024-byte region [ffff888be0a35580, ffff888be0a35980)
[693354.107114] The buggy address belongs to the page:
[693354.107273] page:ffffea002f828c00 count:1 mapcount:0 mapping:ffff888107c17080 index:0x0 compound_mapcount: 0
[693354.107606] flags: 0x17ffffc0008100(slab|head)
[693354.107760] raw: 0017ffffc0008100 ffffea002fcbc808 ffffea0030bd3a08 ffff888107c17080
[693354.108020] r
---truncated---

Affected products

VendorProductAffectedFixed
Linux Linux 4.14.51 – < 4.15, 4.16.17 – < 4.17, 4.17 4.15

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 linux 5.14.9-1 —
Debian 13 linux 5.14.9-1 —
Debian 12 linux 5.14.9-1 —
ReleasePackageFixed inAdvisory
Ubuntu 24.04 LTS linux-raspi-realtime No fix yet —
Ubuntu 22.04 LTS linux-riscv +22 No fix yet —
Ubuntu 20.04 LTS linux 5.4.0-91.102 —
Ubuntu 20.04 LTS linux-aws 5.4.0-1060.63 —
Ubuntu 20.04 LTS linux-azure 5.4.0-1064.67 —
Ubuntu 20.04 LTS linux-bluefield 5.4.0-1022.25 —
Ubuntu 20.04 LTS linux-gcp +1 5.4.0-1058.62 —
Ubuntu 20.04 LTS linux-gke +26 No fix yet —
Ubuntu 20.04 LTS linux-gkeop 5.4.0-1027.28 —
Ubuntu 20.04 LTS linux-ibm 5.4.0-1008.9 —
Ubuntu 20.04 LTS linux-kvm 5.4.0-1050.52 —
Ubuntu 20.04 LTS linux-raspi 5.4.0-1047.52 —
Ubuntu 18.04 LTS linux-aws-5.4 5.4.0-1060.63~18.04.1 —
Ubuntu 18.04 LTS linux-azure-5.4 5.4.0-1064.67~18.04.1 —
Ubuntu 18.04 LTS linux-gcp +14 No fix yet —
Ubuntu 18.04 LTS linux-gcp-5.4 +1 5.4.0-1058.62~18.04.1 —
Ubuntu 18.04 LTS linux-hwe-5.4 5.4.0-91.102~18.04.1 —
Ubuntu 18.04 LTS linux-raspi-5.4 5.4.0-1047.52~18.04.1 —
Ubuntu 16.04 LTS linux-hwe-edge No fix yet —
Show 7 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Ubuntu Pro FIPS 20.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS 18.04 LTS linux-fips +3 No fix yet —
Ubuntu Pro FIPS-updates 20.04 LTS linux-aws-fips 5.4.0-1069.73+fips2 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-azure-fips 5.4.0-1073.76+fips1 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-fips 5.4.0-1037.43 —
Ubuntu Pro FIPS-updates 20.04 LTS linux-gcp-fips 5.4.0-1067.71~20.04.1 —
Ubuntu Pro FIPS-updates 18.04 LTS linux-aws-fips 4.15.0-2120.126 USN-7627-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-azure-fips 4.15.0-2099.105 USN-7627-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-fips 4.15.0-1137.148 USN-7627-2
Ubuntu Pro FIPS-updates 18.04 LTS linux-gcp-fips 4.15.0-2083.89 USN-7627-2
Ubuntu Pro 18.04 LTS linux 4.15.0-239.251 USN-7627-1
Ubuntu Pro 18.04 LTS linux-aws 4.15.0-1182.195 USN-7627-1
Ubuntu Pro 18.04 LTS linux-azure-4.15 4.15.0-1190.205 USN-7627-1
Ubuntu Pro 18.04 LTS linux-gcp-4.15 4.15.0-1175.192 USN-7627-1
Ubuntu Pro 18.04 LTS linux-kvm 4.15.0-1165.170 USN-7627-1
Ubuntu Pro 18.04 LTS linux-oracle 4.15.0-1144.155 USN-7627-1
Ubuntu Pro 16.04 LTS linux-aws-hwe 4.15.0-1182.195~16.04.1 USN-7627-1
Ubuntu Pro 16.04 LTS linux-azure 4.15.0-1190.205~16.04.1 USN-7627-1
Ubuntu Pro 16.04 LTS linux-gcp 4.15.0-1175.192~16.04.1 USN-7627-1
Ubuntu Pro 16.04 LTS linux-hwe 4.15.0-239.251~16.04.1 USN-7627-1
Ubuntu Pro 16.04 LTS linux-oracle 4.15.0-1144.155~16.04.1 USN-7627-1
Ubuntu Pro 14.04 LTS linux-azure 4.15.0-1190.205~14.04.1 USN-7627-1
ReleasePackageFixed inAdvisory
SLES 15 SP5 kernel-64kb +6 5.14.21-150500.55.68.1 SUSE-SU-2024:2190-1
SLES 15 SP5 kernel-azure +2 5.14.21-150500.33.57.1 SUSE-SU-2024:2019-1
SLES 15 SP5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2024:2190-1
SLES 15 SP4 kernel-64kb +4 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLES 15 SP4 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SLES 15 SP4 kernel-syms +1 5.14.21-150400.24.122.1 SUSE-SU-2024:2189-1
SLES 15 SP3 kernel-64kb +7 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLES 15 SP3 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
SLES 15 SP2 kernel-default-base 5.3.18-150200.24.197.1.150200.9.101.1 SUSE-SU-2024:2365-1
SLES 15 SP2 kernel-docs +5 5.3.18-150200.24.197.1 SUSE-SU-2024:2365-1
SLES 12 SP5 kernel-azure +2 4.12.14-16.191.1 SUSE-SU-2024:2360-1
SLES 12 SP5 kernel-docs +4 4.12.14-122.222.1 SUSE-SU-2024:2561-1
Show 22 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SLES for SAP 15 SP4 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SLES for SAP 15 SP4 kernel-docs +2 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLES for SAP 15 SP4 kernel-syms +1 5.14.21-150400.24.122.1 SUSE-SU-2024:2189-1
SLES for SAP 15 SP3 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
SLES for SAP 15 SP3 kernel-docs +5 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLES for SAP 15 SP2 kernel-default-base 5.3.18-150200.24.197.1.150200.9.101.1 SUSE-SU-2024:2365-1
SLES for SAP 15 SP2 kernel-docs +5 5.3.18-150200.24.197.1 SUSE-SU-2024:2365-1
SLES for SAP 12 SP5 kernel-azure +2 4.12.14-16.191.1 SUSE-SU-2024:2360-1
SLES for SAP 12 SP5 kernel-syms +2 4.12.14-122.222.1 SUSE-SU-2024:2561-1
SLE Real Time 12 SP5 kernel-rt +3 4.12.14-10.191.1 SUSE-SU-2024:2381-1
SLE Micro 5.5 kernel-default 5.14.21-150500.55.68.1 SUSE-SU-2024:2190-1
SLE Micro 5.5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2024:2190-1
SLE Micro 5.5 kernel-rt +1 5.14.21-150500.13.58.1 SUSE-SU-2024:2008-1
SLE Micro 5.4 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLE Micro 5.4 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SLE Micro 5.4 kernel-rt +1 5.14.21-150400.15.82.1 SUSE-SU-2024:2011-1
SLE Micro 5.3 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLE Micro 5.3 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SLE Micro 5.3 kernel-rt +1 5.14.21-150400.15.82.1 SUSE-SU-2024:2011-1
SLE Micro 5.2 kernel-default 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLE Micro 5.2 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
SLE Micro 5.2 kernel-rt +1 5.3.18-150300.175.1 SUSE-SU-2024:2384-1
SLE Micro 5.1 kernel-default 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLE Micro 5.1 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
SLE Micro 5.1 kernel-rt +1 5.3.18-150300.175.1 SUSE-SU-2024:2384-1
SLE Live Patching 15 SP5 kernel-default 5.14.21-150500.55.68.1 SUSE-SU-2024:2190-1
SLE Live Patching 15 SP5 kernel-livepatch-SLE15-SP5_Update_15 +1 1-150500.11.3.1 SUSE-SU-2024:2190-1, SUSE-SU-2024:2008-1
SLE Live Patching 15 SP4 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLE Live Patching 15 SP4 kernel-livepatch-SLE15-SP4_Update_27 1-150400.9.3.2 SUSE-SU-2024:2189-1
SLE Live Patching 15 SP3 kernel-default 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLE Live Patching 15 SP3 kernel-livepatch-SLE15-SP3_Update_46 1-150300.7.3.1 SUSE-SU-2024:2362-1
SLE Live Patching 15 SP2 kernel-default 5.3.18-150200.24.197.1 SUSE-SU-2024:2365-1
SLE Live Patching 15 SP2 kernel-livepatch-SLE15-SP2_Update_50 1-150200.5.3.1 SUSE-SU-2024:2365-1
SLE Live Patching 12 SP5 kernel-default 4.12.14-122.222.1 SUSE-SU-2024:2561-1
SLE Live Patching 12 SP5 kgraft-patch-SLE12-SP5_Update_58 1-8.3.1 SUSE-SU-2024:2561-1
SLE HPC 15 SP4 kernel-64kb +3 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SLE HPC 15 SP4 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SLE HPC 15 SP4 kernel-syms +1 5.14.21-150400.24.122.1 SUSE-SU-2024:2189-1
SLE HPC 15 SP3 kernel-64kb +6 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SLE HPC 15 SP3 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
SLE HPC 15 SP2 kernel-default-base 5.3.18-150200.24.197.1.150200.9.101.1 SUSE-SU-2024:2365-1
SLE HPC 15 SP2 kernel-docs +5 5.3.18-150200.24.197.1 SUSE-SU-2024:2365-1
SUSE Real Time Module 15 SP5 kernel-rt +3 5.14.21-150500.13.58.1 SUSE-SU-2024:2008-1
SUSE Manager Server 4.3 kernel-default +1 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SUSE Manager Server 4.3 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SUSE Manager Server 4.3 kernel-syms +1 5.14.21-150400.24.122.1 SUSE-SU-2024:2189-1
SUSE Manager Proxy 4.3 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
SUSE Manager Proxy 4.3 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
SUSE Manager Proxy 4.3 kernel-syms +1 5.14.21-150400.24.122.1 SUSE-SU-2024:2189-1
SUSE Enterprise Storage 7.1 kernel-64kb +6 5.3.18-150300.59.167.1 SUSE-SU-2024:2362-1
SUSE Enterprise Storage 7.1 kernel-default-base 5.3.18-150300.59.167.1.150300.18.98.1 SUSE-SU-2024:2362-1
ReleasePackageFixed inAdvisory
openSUSE Leap 15.5 dtb-aarch64 +10 5.14.21-150500.55.68.1 SUSE-SU-2024:2190-1
openSUSE Leap 15.5 kernel-azure +2 5.14.21-150500.33.57.1 SUSE-SU-2024:2019-1
openSUSE Leap 15.5 kernel-default-base 5.14.21-150500.55.68.1.150500.6.31.1 SUSE-SU-2024:2190-1
openSUSE Leap 15.5 kernel-rt +3 5.14.21-150500.13.58.1 SUSE-SU-2024:2008-1
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
openSUSE Leap Micro 5.4 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
openSUSE Leap Micro 5.4 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
openSUSE Leap Micro 5.4 kernel-rt 5.14.21-150400.15.82.1 SUSE-SU-2024:2011-1
openSUSE Leap Micro 5.3 kernel-default 5.14.21-150400.24.122.2 SUSE-SU-2024:2189-1
openSUSE Leap Micro 5.3 kernel-default-base 5.14.21-150400.24.122.2.150400.24.58.2 SUSE-SU-2024:2189-1
openSUSE Leap Micro 5.3 kernel-rt 5.14.21-150400.15.82.1 SUSE-SU-2024:2011-1

Advisories 13

References