← Back to CVE Explorer

CVE-2026-97556

Full vulnerability record from the local CVENow database.

Description

In the Linux kernel, the following vulnerability has been resolved: smb: client: avoid leaking refcount when cifs_sb_tlink() fails cifs_oplock_break() takes over the reference that cifs_queue_oplock_break() acquired when it queued the work, and drops it with _cifsFileInfo_put() once the break has been processed. Only in setups with "-o multiuser", cifs_sb_tlink() may fail, at which point cifs_oplock_break() returns without putting the file reference, mirroring the reference leak we already fixed in the companion patch to cifs_queue_oplock_break(). This would trigger a crash due to busy inodes on the next unmount: BUG: Dentry ... still in use (1) [unmount of cifs cifs] VFS: Busy inodes after unmount of cifs (cifs) Drop the reference on that path as well. Doing so before the out label mirrors the normal path, which also puts the reference before cifs_done_oplock_break(). Found by Sashiko code review. The failure path was not exercised at runtime.

Severity
Not scored
CVSS score
Not available
Vulnerability status
Received
Source identifier
416baaa9-dc9f-4396-8d5f-8c081fb06d67
Published
2026-09-25 11:17:06.077000
Last modified
2026-10-30 13:21:07.670000
View original CVE JSON
{
  "id": "CVE-2026-97556",
  "sourceIdentifier": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
  "published": "2026-09-25T11:17:06.077",
  "lastModified": "2026-10-30T13:21:07.670",
  "vulnStatus": "Received",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nsmb: client: avoid leaking refcount when cifs_sb_tlink() fails\n\ncifs_oplock_break() takes over the reference that\ncifs_queue_oplock_break() acquired when it queued the work, and drops it\nwith _cifsFileInfo_put() once the break has been processed.\n\nOnly in setups with \"-o multiuser\", cifs_sb_tlink() may fail, at which\npoint cifs_oplock_break() returns without putting the file reference,\nmirroring the reference leak we already fixed in the companion patch to\ncifs_queue_oplock_break().\n\nThis would trigger a crash due to busy inodes on the next unmount:\n\n  BUG: Dentry ... still in use (1) [unmount of cifs cifs]\n  VFS: Busy inodes after unmount of cifs (cifs)\n\nDrop the reference on that path as well. Doing so before the out label\nmirrors the normal path, which also puts the reference before\ncifs_done_oplock_break().\n\nFound by Sashiko code review. The failure path was not exercised at\nruntime."
    }
  ],
  "affected": [
    {
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
      "affectedData": [
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "unaffected",
          "programFiles": [
            "fs/smb/client/file.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "b99f490ea87ebcca3a429fd8837067feb56a4c7c",
              "lessThan": "f1fd8a84181b3af03c508e0b02b4877945dd070a",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5ee28bcfbaacf289eb25c662a2862542ea6ce6a7",
              "lessThan": "55c5f095d4df14271b238f826e1392fda7b6e60e",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e8f5f849ffce24490eb9449e98312b66c0dba76f",
              "lessThan": "e9c5bcc88b8337157e480c85a6d2f326bc265012",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e8f5f849ffce24490eb9449e98312b66c0dba76f",
              "lessThan": "9ec991e148368e3207e98134c509a625097f7693",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e8f5f849ffce24490eb9449e98312b66c0dba76f",
              "lessThan": "dd03fd658ea59821505e0e643b6b7cbdf51c4e1d",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e8f5f849ffce24490eb9449e98312b66c0dba76f",
              "lessThan": "1d1b0f1d812a4011a57bc6c70492c34a2e46c6dd",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "e8f5f849ffce24490eb9449e98312b66c0dba76f",
              "lessThan": "23b26f4408ac3f35a482d2e5cf6fc865d4201b71",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "6b67a6d2e50634fe127e656147c81915955e9f5e",
              "versionType": "git",
              "status": "affected"
            },
            {
              "version": "5.15.128",
              "lessThan": "5.15.224",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "6.1.47",
              "lessThan": "6.1.189",
              "versionType": "semver",
              "status": "affected"
            },
            {
              "version": "6.4.12",
              "lessThan": "6.5",
              "versionType": "semver",
              "status": "affected"
            }
          ]
        },
        {
          "vendor": "Linux",
          "product": "Linux",
          "defaultStatus": "affected",
          "programFiles": [
            "fs/smb/client/file.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "versions": [
            {
              "version": "6.5",
              "status": "affected"
            },
            {
              "version": "0",
              "lessThan": "6.5",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "5.15.224",
              "lessThanOrEqual": "5.15.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.1.189",
              "lessThanOrEqual": "6.1.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.6.158",
              "lessThanOrEqual": "6.6.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.12.111",
              "lessThanOrEqual": "6.12.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "6.18.53",
              "lessThanOrEqual": "6.18.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.2.7",
              "lessThanOrEqual": "7.2.*",
              "versionType": "semver",
              "status": "unaffected"
            },
            {
              "version": "7.3",
              "lessThanOrEqual": "*",
              "versionType": "original_commit_for_fix",
              "status": "unaffected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {},
  "references": [
    {
      "url": "https://git.kernel.org/stable/c/1d1b0f1d812a4011a57bc6c70492c34a2e46c6dd",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/23b26f4408ac3f35a482d2e5cf6fc865d4201b71",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/55c5f095d4df14271b238f826e1392fda7b6e60e",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/9ec991e148368e3207e98134c509a625097f7693",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/dd03fd658ea59821505e0e643b6b7cbdf51c4e1d",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/e9c5bcc88b8337157e480c85a6d2f326bc265012",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    },
    {
      "url": "https://git.kernel.org/stable/c/f1fd8a84181b3af03c508e0b02b4877945dd070a",
      "source": "416baaa9-dc9f-4396-8d5f-8c081fb06d67"
    }
  ]
}