{"id":"DEBIAN-CVE-2023-53531","details":"In the Linux kernel, the following vulnerability has been resolved:  null_blk: fix poll request timeout handling  When doing io_uring benchmark on /dev/nullb0, it's easy to crash the kernel if poll requests timeout triggered, as reported by David. [1]  BUG: kernel NULL pointer dereference, address: 0000000000000008 Workqueue: kblockd blk_mq_timeout_work RIP: 0010:null_timeout_rq+0x4e/0x91 Call Trace:  ? null_timeout_rq+0x4e/0x91  blk_mq_handle_expired+0x31/0x4b  bt_iter+0x68/0x84  ? bt_tags_iter+0x81/0x81  __sbitmap_for_each_set.constprop.0+0xb0/0xf2  ? __blk_mq_complete_request_remote+0xf/0xf  bt_for_each+0x46/0x64  ? __blk_mq_complete_request_remote+0xf/0xf  ? percpu_ref_get_many+0xc/0x2a  blk_mq_queue_tag_busy_iter+0x14d/0x18e  blk_mq_timeout_work+0x95/0x127  process_one_work+0x185/0x263  worker_thread+0x1b5/0x227  This is indeed a race problem between null_timeout_rq() and null_poll().  null_poll()\t\t\t\tnull_timeout_rq()   spin_lock(&nq-\u003epoll_lock)   list_splice_init(&nq-\u003epoll_list, &list)   spin_unlock(&nq-\u003epoll_lock)    while (!list_empty(&list))     req = list_first_entry()     list_del_init()     ...     blk_mq_add_to_batch()     // req-\u003erq_next = NULL \t\t\t\t\tspin_lock(&nq-\u003epoll_lock)  \t\t\t\t\t// rq-\u003equeuelist-\u003enext == NULL \t\t\t\t\tlist_del_init(&rq-\u003equeuelist)  \t\t\t\t\tspin_unlock(&nq-\u003epoll_lock)  Fix these problems by setting requests state to MQ_RQ_COMPLETE under nq-\u003epoll_lock protection, in which null_timeout_rq() can safely detect this race and early return.  Note this patch just fix the kernel panic when request timeout happen.  [1] https://lore.kernel.org/all/3893581.1691785261@warthog.procyon.org.uk/","modified":"2026-09-15T09:02:51.790420178Z","published":"2025-10-01T12:15:57.843Z","upstream":["CVE-2023-53531"],"references":[{"type":"ADVISORY","url":"https://security-tracker.debian.org/tracker/CVE-2023-53531"}],"affected":[{"package":{"name":"linux","ecosystem":"Debian:12","purl":"pkg:deb/debian/linux?arch=source&distro=bookworm"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.1.55-1"}]}],"versions":["6.1.27-1","6.1.37-1","6.1.38-1","6.1.38-2","6.1.38-2~bpo11+1","6.1.38-3","6.1.38-4","6.1.38-4~bpo11+1","6.1.52-1","6.1.55-1~bpo11+1"],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53531.json"}},{"package":{"name":"linux","ecosystem":"Debian:13","purl":"pkg:deb/debian/linux?arch=source&distro=trixie"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.5.6-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53531.json"}},{"package":{"name":"linux","ecosystem":"Debian:14","purl":"pkg:deb/debian/linux?arch=source&distro=forky"},"ranges":[{"type":"ECOSYSTEM","events":[{"introduced":"0"},{"fixed":"6.5.6-1"}]}],"ecosystem_specific":{"urgency":"not yet assigned"},"database_specific":{"source":"https://storage.googleapis.com/osv-test-debian-osv/debian-cve-osv/DEBIAN-CVE-2023-53531.json"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V3","score":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H"}]}