CVE-2026-46318 (GCVE-0-2026-46318)

Vulnerability from cvelistv5 – Published: 2026-06-09 12:11 – Updated: 2026-06-14 18:08
VLAI
Title
Revert "mm/hugetlbfs: update hugetlbfs to use mmap_prepare"
Summary
In the Linux kernel, the following vulnerability has been resolved: Revert "mm/hugetlbfs: update hugetlbfs to use mmap_prepare" This reverts commit ea52cb24cd3f ("mm/hugetlbfs: update hugetlbfs to use mmap_prepare") with conflict resolution to account for changes in commit ea52cb24cd3f ("mm/hugetlbfs: update hugetlbfs to use mmap_prepare"). The patch incorrectly handled hugetlb VMA lock allocation at the mmap_prepare stage, where a failed allocation occurring after mmap_prepare is called might result in the lock leaking. There is no risk of a merge causing a similar issues, as VMA_DONTEXPAND_BIT is set for hugetlb mappings. As a first step in addressing this issue, simply revert the change so we can rework how we do this having corrected the underlying issues. We maintain the VMA flags changes as best we can, accounting for the fact that we were working with a VMA descriptor previously and propagating like-for-like changes for this. Note that we invoke vma_set_flags() and do not call vma_start_write() as vm_flags_set() does. This is OK as it's being done in an .mmap hook where the VMA is not yet linked into the tree so nobody else can be accessing it.
Assigner
Impacted products
Vendor Product Version
Linux Linux Affected: ea52cb24cd3fb121283754ab82b2cb3044609359 , < 3af5fc3f0ac98c624c109c8c0796fa46e814344c (git)
Affected: ea52cb24cd3fb121283754ab82b2cb3044609359 , < 83f9efcce93f8574be2279090ee2aec58b86cda7 (git)
Create a notification for this product.
Linux Linux Affected: 6.19
Unaffected: 0 , < 6.19 (semver)
Unaffected: 7.0.12 , ≤ 7.0.* (semver)
Unaffected: 7.1 , ≤ * (original_commit_for_fix)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "Linux",
          "programFiles": [
            "fs/hugetlbfs/inode.c",
            "include/linux/hugetlb.h",
            "include/linux/hugetlb_inline.h",
            "mm/hugetlb.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "lessThan": "3af5fc3f0ac98c624c109c8c0796fa46e814344c",
              "status": "affected",
              "version": "ea52cb24cd3fb121283754ab82b2cb3044609359",
              "versionType": "git"
            },
            {
              "lessThan": "83f9efcce93f8574be2279090ee2aec58b86cda7",
              "status": "affected",
              "version": "ea52cb24cd3fb121283754ab82b2cb3044609359",
              "versionType": "git"
            }
          ]
        },
        {
          "defaultStatus": "affected",
          "product": "Linux",
          "programFiles": [
            "fs/hugetlbfs/inode.c",
            "include/linux/hugetlb.h",
            "include/linux/hugetlb_inline.h",
            "mm/hugetlb.c"
          ],
          "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
          "vendor": "Linux",
          "versions": [
            {
              "status": "affected",
              "version": "6.19"
            },
            {
              "lessThan": "6.19",
              "status": "unaffected",
              "version": "0",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "7.0.*",
              "status": "unaffected",
              "version": "7.0.12",
              "versionType": "semver"
            },
            {
              "lessThanOrEqual": "*",
              "status": "unaffected",
              "version": "7.1",
              "versionType": "original_commit_for_fix"
            }
          ]
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.0.12",
                  "versionStartIncluding": "6.19",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*",
                  "versionEndExcluding": "7.1",
                  "versionStartIncluding": "6.19",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "In the Linux kernel, the following vulnerability has been resolved:\n\nRevert \"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\"\n\nThis reverts commit ea52cb24cd3f (\"mm/hugetlbfs: update hugetlbfs to use\nmmap_prepare\") with conflict resolution to account for changes in commit\nea52cb24cd3f (\"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\").\n\nThe patch incorrectly handled hugetlb VMA lock allocation at the\nmmap_prepare stage, where a failed allocation occurring after mmap_prepare\nis called might result in the lock leaking.\n\nThere is no risk of a merge causing a similar issues, as\nVMA_DONTEXPAND_BIT is set for hugetlb mappings.\n\nAs a first step in addressing this issue, simply revert the change so we\ncan rework how we do this having corrected the underlying issues.\n\nWe maintain the VMA flags changes as best we can, accounting for the fact\nthat we were working with a VMA descriptor previously and propagating\nlike-for-like changes for this.\n\nNote that we invoke vma_set_flags() and do not call vma_start_write() as\nvm_flags_set() does.  This is OK as it\u0027s being done in an .mmap hook where\nthe VMA is not yet linked into the tree so nobody else can be accessing\nit."
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-06-14T18:08:52.009Z",
        "orgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
        "shortName": "Linux"
      },
      "references": [
        {
          "url": "https://git.kernel.org/stable/c/3af5fc3f0ac98c624c109c8c0796fa46e814344c"
        },
        {
          "url": "https://git.kernel.org/stable/c/83f9efcce93f8574be2279090ee2aec58b86cda7"
        }
      ],
      "title": "Revert \"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\"",
      "x_generator": {
        "engine": "bippy-1.2.0"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "416baaa9-dc9f-4396-8d5f-8c081fb06d67",
    "assignerShortName": "Linux",
    "cveId": "CVE-2026-46318",
    "datePublished": "2026-06-09T12:11:11.181Z",
    "dateReserved": "2026-05-13T15:03:33.112Z",
    "dateUpdated": "2026-06-14T18:08:52.009Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2",
  "vulnerability-lookup:meta": {
    "epss": {
      "cve": "CVE-2026-46318",
      "date": "2026-07-22",
      "epss": "0.001",
      "percentile": "0.0104"
    },
    "nvd": "{\"cve\":{\"id\":\"CVE-2026-46318\",\"sourceIdentifier\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"published\":\"2026-06-09T13:16:37.107\",\"lastModified\":\"2026-07-23T08:10:00.137\",\"vulnStatus\":\"Analyzed\",\"cveTags\":[],\"descriptions\":[{\"lang\":\"en\",\"value\":\"In the Linux kernel, the following vulnerability has been resolved:\\n\\nRevert \\\"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\\\"\\n\\nThis reverts commit ea52cb24cd3f (\\\"mm/hugetlbfs: update hugetlbfs to use\\nmmap_prepare\\\") with conflict resolution to account for changes in commit\\nea52cb24cd3f (\\\"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\\\").\\n\\nThe patch incorrectly handled hugetlb VMA lock allocation at the\\nmmap_prepare stage, where a failed allocation occurring after mmap_prepare\\nis called might result in the lock leaking.\\n\\nThere is no risk of a merge causing a similar issues, as\\nVMA_DONTEXPAND_BIT is set for hugetlb mappings.\\n\\nAs a first step in addressing this issue, simply revert the change so we\\ncan rework how we do this having corrected the underlying issues.\\n\\nWe maintain the VMA flags changes as best we can, accounting for the fact\\nthat we were working with a VMA descriptor previously and propagating\\nlike-for-like changes for this.\\n\\nNote that we invoke vma_set_flags() and do not call vma_start_write() as\\nvm_flags_set() does.  This is OK as it\u0027s being done in an .mmap hook where\\nthe VMA is not yet linked into the tree so nobody else can be accessing\\nit.\"},{\"lang\":\"es\",\"value\":\"En el kernel de Linux, la siguiente vulnerabilidad ha sido resuelta:\\n\\nRevertir \u0027mm/hugetlbfs: update hugetlbfs to use mmap_prepare\u0027\\n\\nEsto revierte el commit ea52cb24cd3f (\u0027mm/hugetlbfs: update hugetlbfs to use mmap_prepare\u0027) con resoluci\u00f3n de conflictos para tener en cuenta los cambios en el commit ea52cb24cd3f (\u0027mm/hugetlbfs: update hugetlbfs to use mmap_prepare\u0027).\\n\\nEl parche manej\u00f3 incorrectamente la asignaci\u00f3n del bloqueo VMA de hugetlb en la etapa mmap_prepare, donde una asignaci\u00f3n fallida que ocurre despu\u00e9s de que se llama a mmap_prepare podr\u00eda resultar en la fuga del bloqueo.\\n\\nNo hay riesgo de que una fusi\u00f3n cause problemas similares, ya que VMA_DONTEXPAND_BIT est\u00e1 configurado para las asignaciones de hugetlb.\\n\\nComo primer paso para abordar este problema, simplemente revertimos el cambio para que podamos reelaborar c\u00f3mo hacemos esto habiendo corregido los problemas subyacentes.\\n\\nMantenemos los cambios de las banderas VMA lo mejor que podemos, teniendo en cuenta el hecho de que est\u00e1bamos trabajando con un descriptor VMA anteriormente y propagando cambios equivalentes para esto.\\n\\nTenga en cuenta que invocamos vma_set_flags() y no llamamos a vma_start_write() como lo hace vm_flags_set(). Esto est\u00e1 bien ya que se est\u00e1 haciendo en un gancho .mmap donde el VMA a\u00fan no est\u00e1 vinculado al \u00e1rbol, por lo que nadie m\u00e1s puede acceder a \u00e9l.\"}],\"affected\":[{\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"affectedData\":[{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"unaffected\",\"programFiles\":[\"fs/hugetlbfs/inode.c\",\"include/linux/hugetlb.h\",\"include/linux/hugetlb_inline.h\",\"mm/hugetlb.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"ea52cb24cd3fb121283754ab82b2cb3044609359\",\"lessThan\":\"3af5fc3f0ac98c624c109c8c0796fa46e814344c\",\"versionType\":\"git\",\"status\":\"affected\"},{\"version\":\"ea52cb24cd3fb121283754ab82b2cb3044609359\",\"lessThan\":\"83f9efcce93f8574be2279090ee2aec58b86cda7\",\"versionType\":\"git\",\"status\":\"affected\"}]},{\"vendor\":\"Linux\",\"product\":\"Linux\",\"defaultStatus\":\"affected\",\"programFiles\":[\"fs/hugetlbfs/inode.c\",\"include/linux/hugetlb.h\",\"include/linux/hugetlb_inline.h\",\"mm/hugetlb.c\"],\"repo\":\"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\"versions\":[{\"version\":\"6.19\",\"status\":\"affected\"},{\"version\":\"0\",\"lessThan\":\"6.19\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.0.12\",\"lessThanOrEqual\":\"7.0.*\",\"versionType\":\"semver\",\"status\":\"unaffected\"},{\"version\":\"7.1\",\"lessThanOrEqual\":\"*\",\"versionType\":\"original_commit_for_fix\",\"status\":\"unaffected\"}]}]}],\"metrics\":{\"cvssMetricV31\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"cvssData\":{\"version\":\"3.1\",\"vectorString\":\"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H\",\"baseScore\":5.5,\"baseSeverity\":\"MEDIUM\",\"attackVector\":\"LOCAL\",\"attackComplexity\":\"LOW\",\"privilegesRequired\":\"LOW\",\"userInteraction\":\"NONE\",\"scope\":\"UNCHANGED\",\"confidentialityImpact\":\"NONE\",\"integrityImpact\":\"NONE\",\"availabilityImpact\":\"HIGH\"},\"exploitabilityScore\":1.8,\"impactScore\":3.6}]},\"weaknesses\":[{\"source\":\"nvd@nist.gov\",\"type\":\"Primary\",\"description\":[{\"lang\":\"en\",\"value\":\"NVD-CWE-noinfo\"}]}],\"configurations\":[{\"nodes\":[{\"operator\":\"OR\",\"negate\":false,\"cpeMatch\":[{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*\",\"versionStartIncluding\":\"6.19\",\"versionEndExcluding\":\"7.0.12\",\"matchCriteriaId\":\"9161A938-0FA8-44BC-95FE-C5A271601AB3\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc1:*:*:*:*:*:*\",\"matchCriteriaId\":\"B1EF7059-E670-45F4-B422-54C40FA86390\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc2:*:*:*:*:*:*\",\"matchCriteriaId\":\"0D38F0BF-A728-4133-A358-D44A2F7EE6D6\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc3:*:*:*:*:*:*\",\"matchCriteriaId\":\"EC732D08-5F7B-46D9-B154-E60C7F4F0A97\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc4:*:*:*:*:*:*\",\"matchCriteriaId\":\"E5910A9D-F60A-409A-B486-FE66BFEBA9B9\"},{\"vulnerable\":true,\"criteria\":\"cpe:2.3:o:linux:linux_kernel:7.1:rc5:*:*:*:*:*:*\",\"matchCriteriaId\":\"81DFF19E-9CF8-49C6-8C36-1E4038622933\"}]}]}],\"references\":[{\"url\":\"https://git.kernel.org/stable/c/3af5fc3f0ac98c624c109c8c0796fa46e814344c\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]},{\"url\":\"https://git.kernel.org/stable/c/83f9efcce93f8574be2279090ee2aec58b86cda7\",\"source\":\"416baaa9-dc9f-4396-8d5f-8c081fb06d67\",\"tags\":[\"Patch\"]}]}}",
    "redhat_vex": {
      "aggregate_severity": "Low",
      "current_release_date": "2026-06-28T11:45:12+00:00",
      "cve": "CVE-2026-46318",
      "id": "CVE-2026-46318",
      "initial_release_date": "2026-06-09T00:00:00+00:00",
      "product_status:known_affected": "14",
      "product_status:known_not_affected": "260",
      "source": "Red Hat CSAF VEX",
      "status": "final",
      "title": "kernel: Revert \"mm/hugetlbfs: update hugetlbfs to use mmap_prepare\"",
      "url": "https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-46318.json",
      "version": "3"
    },
    "suse_vex": {
      "aggregate_severity": "moderate",
      "current_release_date": "2026-06-15T01:20:34Z",
      "cve": "CVE-2026-46318",
      "id": "CVE-2026-46318",
      "initial_release_date": "2026-06-10T02:25:53Z",
      "product_status:known_not_affected": "291",
      "product_status:recommended": "4",
      "source": "SUSE CSAF VEX",
      "status": "interim",
      "title": "SUSE CVE CVE-2026-46318",
      "url": "https://ftp.suse.com/pub/projects/security/csaf-vex/cve-2026-46318.json",
      "version": "4"
    }
  }
}



Log in or create an account to share your comment.




Tags
Taxonomy of the tags.


Loading…

Loading…

Loading…

Forecast uses a logistic model when the trend is rising, or an exponential decay model when the trend is falling. Fitted via linearized least squares.

Sightings

Author Source Type Date Other

Nomenclature

  • Seen: The vulnerability was mentioned, discussed, or observed by the user.
  • Confirmed: The vulnerability has been validated from an analyst's perspective.
  • Published Proof of Concept: A public proof of concept is available for this vulnerability.
  • Exploited: The vulnerability was observed as exploited by the user who reported the sighting.
  • Patched: The vulnerability was observed as successfully patched by the user who reported the sighting.
  • Not exploited: The vulnerability was not observed as exploited by the user who reported the sighting.
  • Not confirmed: The user expressed doubt about the validity of the vulnerability.
  • Not patched: The vulnerability was not observed as successfully patched by the user who reported the sighting.

Loading…

Detection rules are retrieved from Rulezet.

Loading…

Loading…

Loading…