{"id":41032,"date":"2026-10-19T00:31:52","date_gmt":"2026-10-18T16:31:52","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98560"},"modified":"2026-10-19T00:31:52","modified_gmt":"2026-10-18T16:31:52","slug":"cve-2026-98560","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98560","title":{"rendered":"CVE-2026-98560 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet\/rds: size a conne"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/rds: size a connection&#8217;s path set by the transport it ends up with<\/p>\n<p>__rds_conn_create() computes npaths from the caller&#8217;s transport before<br \/>\nit decides whether a connection to one of the host&#8217;s own addresses is<br \/>\nto be handled by the loopback transport instead.  That substitution is<br \/>\nwhat an RDS\/TCP socket sending to a local address gets, and after it<br \/>\nthe path init loop still runs for the TCP transport&#8217;s RDS_MPATH_WORKERS<br \/>\npaths and allocates an ordered workqueue for each, while<br \/>\nrds_loop_conn_alloc() only ever provides transport data for path 0.<\/p>\n<p>rds_conn_destroy() sizes its teardown from c_trans, by then the<br \/>\nloopback transport, so it visits path 0 only &#8211; and<br \/>\nrds_conn_path_destroy() would skip the other paths anyway, since it<br \/>\nreturns before destroy_workqueue() for a path without transport data.<br \/>\nkfree(c_path) then drops the last pointers to seven workqueues.  That<br \/>\nrepeats for every such connection, on every netns teardown or module<br \/>\nunload, and every distinct local destination address is a separate<br \/>\nconnection.<\/p>\n<p>Recompute npaths once the transport is final, so that creation and<br \/>\ndestruction agree on the set of paths.  The c_path array stays sized<br \/>\nfor the caller&#8217;s transport; the unused entries are freed with it.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/rds: size a connection&#8217;s path set by the transport it ends up with<\/p>\n<p>__rds_conn_create() computes npaths from the caller&#8217;s trans<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-41032","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/41032","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=41032"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41032"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41032"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}