{"id":28990,"date":"2026-09-25T20:31:39","date_gmt":"2026-09-25T12:31:39","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97558"},"modified":"2026-09-25T20:31:39","modified_gmt":"2026-09-25T12:31:39","slug":"cve-2026-97558","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97558","title":{"rendered":"CVE-2026-97558 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: fix cifs"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: fix cifsFileInfo reference leak in deferred close<\/p>\n<p>When cifs_close() defers a close, it hands the cifsFileInfo reference<br \/>\nof the closing struct file to the queued work. Each execution of<br \/>\nsmb2_deferred_work_close() drops one such reference.<\/p>\n<p>deferred_close_scheduled can be false while the work is pending: the<br \/>\nworkqueue clears PENDING when the callback starts to run, before the<br \/>\ncallback clears the flag under deferred_lock. A close in that<br \/>\ninterval requeues the running work, and the callback then clears the<br \/>\nflag, leaving the requeued work pending with the flag down. A later<br \/>\ncifs_open() can reuse the handle and its cifs_close() reaches the<br \/>\nsame branch: queue_delayed_work() fails because the work is still<br \/>\npending, but cifs_close() returns without dropping the closing file&#8217;s<br \/>\nreference. The cifsFileInfo count stays pinned and its tlink, dentry<br \/>\nand server handle are leaked.<\/p>\n<p>Check the return value and hand off the reference only when work was<br \/>\nactually queued. Otherwise, use the shared _cifsFileInfo_put(), like<br \/>\nthe mod_delayed_work() branch above: the pending execution already<br \/>\nowns its reference.<\/p>\n<p>This issue was found by an in-house static analysis tool.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: fix cifsFileInfo reference leak in deferred close<\/p>\n<p>When cifs_close() defers a close, it hands the cifsFileInfo referen<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-28990","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/28990","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=28990"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28990"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28990"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}