{"id":25595,"date":"2026-09-18T04:31:36","date_gmt":"2026-09-17T20:31:36","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90186"},"modified":"2026-09-18T04:31:36","modified_gmt":"2026-09-17T20:31:36","slug":"cve-2026-90186","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90186","title":{"rendered":"CVE-2026-90186 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnull_blk: reject per-"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>null_blk: reject per-device queue resize for shared tag set<\/p>\n<p>When shared_tags is enabled, null_setup_tagset() makes the device use the<br \/>\nglobal tag_set, whose driver_data stays NULL. null_map_queues() therefore<br \/>\nfalls back to the module-wide g_submit_queues\/g_poll_queues instead of any<br \/>\nper-device value.<\/p>\n<p>Resizing submit_queues or poll_queues via configfs on such a device calls<br \/>\nblk_mq_update_nr_hw_queues() on the shared set, shrinking<br \/>\nset-&gt;nr_hw_queues.  __blk_mq_realloc_hw_ctxs() only grows the<br \/>\nq-&gt;queue_hw_ctx[] allocation, so on shrink it merely exits and NULLs the<br \/>\nnow-excess hctx slots. null_map_queues(), however, keeps mapping CPUs with<br \/>\nthe unchanged g_submit_queues\/g_poll_queues, so mq_map[] ends up pointing<br \/>\nat those NULLed hctx slots. blk_mq_map_swqueue() then dereferences the NULL<br \/>\nhctx (hctx-&gt;cpumask), crashing the kernel:<\/p>\n<p>[  460.218374] KASAN: null-ptr-deref in range [0x0000000000000098-0x000000000000009f]<br \/>\n[  460.219003] CPU: 24 UID: 0 PID: 1492 Comm: sh Not tainted 7.2.0-rc2+ #67 PREEMPT(full)<br \/>\n[  460.219792] Hardware name: QEMU Standard PC (i440FX + PIIX, 1996), BIOS 1.17.0-4.fc41 04\/01\/2014<br \/>\n[  460.220452] RIP: 0010:blk_mq_map_swqueue+0x4db\/0x1430<br \/>\n&#8230;&#8230;<br \/>\n[  460.228977] Call Trace:<br \/>\n[  460.229175]<br \/>\n[  460.229354]  blk_mq_update_nr_hw_queues+0xd49\/0x11c0<br \/>\n[  460.229779]  ? __pfx_blk_mq_update_nr_hw_queues+0x10\/0x10<br \/>\n[  460.230200]  nullb_update_nr_hw_queues+0x1a9\/0x370 [null_blk]<br \/>\n[  460.230694]  nullb_device_submit_queues_store+0xd9\/0x170 [null_blk]<br \/>\n[  460.231190]  ? __pfx_nullb_device_submit_queues_store+0x10\/0x10 [null_blk]<br \/>\n[  460.231776]  ? configfs_write_iter+0x35c\/0x4e0<br \/>\n[  460.232122]  configfs_write_iter+0x286\/0x4e0<br \/>\n[  460.232460]  vfs_write+0x52d\/0xd00<br \/>\n[  460.232779]  ? __x64_sys_openat+0x108\/0x1d0<br \/>\n[  460.233106]  ? __pfx_vfs_write+0x10\/0x10<br \/>\n[  460.233413]  ? fdget_pos+0x1cf\/0x4c0<br \/>\n[  460.233745]  ? fput_close+0x133\/0x190<br \/>\n[  460.234038]  ? __pfx_expand_files+0x10\/0x10<br \/>\n[  460.234368]  ksys_write+0xfc\/0x1d0<\/p>\n<p>Reproducer:<br \/>\nmodprobe null_blk shared_tags=1 submit_queues=64 poll_queues=1<br \/>\nmkdir \/sys\/kernel\/config\/nullb\/dev<br \/>\necho 1 &gt; \/sys\/kernel\/config\/nullb\/dev\/power<br \/>\necho 1 &gt; \/sys\/kernel\/config\/nullb\/dev\/submit_queues<\/p>\n<p>A per-device resize of a shared tag set is meaningless anyway, so reject it<br \/>\nwith -EINVAL in nullb_update_nr_hw_queues() when the device is bound to the<br \/>\nglobal tag_set.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>null_blk: reject per-device queue resize for shared tag set<\/p>\n<p>When shared_tags is enabled, null_setup_tagset() makes the device use <\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-25595","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/25595","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=25595"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25595"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25595"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}