{"id":25702,"date":"2026-09-18T04:31:45","date_gmt":"2026-09-17T20:31:45","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90293"},"modified":"2026-09-18T04:31:45","modified_gmt":"2026-09-17T20:31:45","slug":"cve-2026-90293","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90293","title":{"rendered":"CVE-2026-90293 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nIB\/isert: post the fu"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>IB\/isert: post the full-feature receive buffers after session registration<\/p>\n<p>isert_put_login_tx() posts the full-feature receive buffers before<br \/>\n__transport_register_session() runs, so an initiator that does not wait<br \/>\nfor the final Login Response can still have a SCSI command executed<br \/>\nagainst an se_session whose se_tpg is NULL &#8211; the same oops as the<br \/>\nprevious patch, at target_submit+0xbe.<\/p>\n<p>Post them from isert_get_rx_pdu(), which the previous patch already uses<br \/>\nto send that response, and post them before that send: the receive queue<br \/>\nis filled at the moment the initiator is told it may use it.  Allocating<br \/>\nthere keeps the existing property that a memory allocation failure cannot<br \/>\nhappen once the final Login Response is on the wire.<\/p>\n<p>The receive queue is already empty between the final Login Request and<br \/>\nisert_post_recvm(); this moves the second point later, from a median of<br \/>\n92 us to 172 us over 1200 logins.  Only an initiator that sends before it<br \/>\nhas been told to can reach that window, and on IB and RoCE its send is<br \/>\nretried there until the buffers appear &#8211; isert_rdma_accept() asks for<br \/>\nrnr_retry_count = 7.  iWARP has no RNR flow control, so there the same<br \/>\nsend terminates the connection instead.<\/p>\n<p>Measured over rxe, 400 login cycles per run, with an initiator that does<br \/>\nnot wait: an instrumented build counted no entries to isert_recv_done()<br \/>\nbefore the buffers are posted in 10 runs, where that initiator oopsed<br \/>\n8 of 10 unpatched runs and 5 of 10 with only the previous patch.<\/p>\n<p>Not tested: iWARP, discovery sessions over iSER, and real HCAs.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>IB\/isert: post the full-feature receive buffers after session registration<\/p>\n<p>isert_put_login_tx() posts the full-feature receive buf<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-25702","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/25702","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=25702"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25702"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25702"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}