{"id":28989,"date":"2026-09-25T20:31:39","date_gmt":"2026-09-25T12:31:39","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97557"},"modified":"2026-09-25T20:31:39","modified_gmt":"2026-09-25T12:31:39","slug":"cve-2026-97557","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97557","title":{"rendered":"CVE-2026-97557 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: avoid le"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: avoid leaking refcount in cifs_queue_oplock_break()<\/p>\n<p>cifs_queue_oplock_break() unconditionally takes a reference on the<br \/>\ntarget file before queueing cifs_oplock_break(). Only that work item<br \/>\ndecreases the reference counter again.<\/p>\n<p>If another oplock break arrives while that work is still queued,<br \/>\nqueue_work() will return false and not queue this second work item. As a<br \/>\nresult, we will never reach the point to drop the file reference again<br \/>\nand are leaking this reference. This can be triggered when interacting<br \/>\nwith a slow-responding server.<\/p>\n<p>As a result, later unmount operations for this file system will fail with<\/p>\n<p>  BUG: Dentry &#8230; still in use (1) [unmount of cifs cifs]<br \/>\n  VFS: Busy inodes after unmount of cifs (cifs)<br \/>\n  kernel BUG at fs\/super.c:777!<\/p>\n<p>Fix this by only incrementing the reference count if the work has been<br \/>\nqueued successfully. Taking it after queue_work() is safe because all<br \/>\nthree callers hold tcon-&gt;open_file_lock across the call and<br \/>\n_cifsFileInfo_put() decrements under that same lock, so a worker that<br \/>\nstarts the handler in the window cannot drop the reference before it has<br \/>\nbeen taken.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>smb: client: avoid leaking refcount in cifs_queue_oplock_break()<\/p>\n<p>cifs_queue_oplock_break() unconditionally takes a reference on th<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-28989","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/28989","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=28989"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28989"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28989"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}