Skip to content
Heist/ feed
High

mm/rmap: fix missing barrier between anon_vma init and vma->anon_vma publish

Type: advisorySource: Official CVE List1 source record

In the Linux kernel, the following vulnerability has been resolved: mm/rmap: fix missing barrier between anon_vma init and vma->anon_vma publish On arm64 server, we find that a task trying to grab the anon_vma lock triggers hungtask. INFO: task main:2354726 blocked for more than 120 seconds. Tainted: G E 5.10.0-0021.aarch64 #1 "echo 0 > /proc/sys/kernel/hung_task_timeout_secs" disables this message. task:main state:D stack: 0 pid:2354726 ppid:2350673 flags:0x00000a01 Call trace: __switch_to+0x7c/0xbc __schedule+0x3b4/0x8a0 schedule+0x50/0xe0 rwsem_down_write_slowpath+0x3cc/0x6cc down_write+0x60/0x260 __anon_vma_prepare+0x6c/0x210 do_anonymous_page+0x258/0x660 handle_pte_fault+0x188/0x214 __handle_mm_fault+0x1b0/0x380 handle_mm_fault+0xf4/0x284 do_page_fault+0x19c/0x494 do_translation_fault+0xcc/0xf8 do_mem_abort+0x48/0xac el0_da+0x44/0x80 el0_sync_handler+0x88/0xb4 el0_sync+0x160/0x180 After analyzing the vmcore, we found the anon_vma->root->rwsem.count is -1. There is another anon_vma whose anon_vma->root->rwsem.count is 1, the anon_vma->root->rwsem.owner shows the lock is held, but the stack of the task shows the task doesn't hold the anon_vma lock. After adding more debugging info, we found __anon_vma_prepare() reuses anon_vma and triggers the UAF of anon_vma->root due to missing memory barrier, leading to locking and unlocking two different anon_vma->root, thus leading to an anon_vma will never be unlocked, and another anon_vma couldn't be locked anymore. This race requir

Announced Source revision 1
Original source ↗

CVE-2026-98507

Primary source · Revision 1

Imported from structured advisory data. Source references identify upstream records or fields; verify affected versions and your deployed configuration.

Security context

Source reference: cve:CVE-2026-98507

Linux

Source reference: /containers/cna/affected/0/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Linux

Source reference: /containers/cna/affected/1/product

Affected versions
Not stated in this record
Fixed versions
Not stated in this record
Prerequisites
Not stated in this record

Structured affected-version data

Original package identities and version rules from this source.

[
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1",
        "lessThan": "465e222815c8839445d09028fa4c77e70f7f1c7d",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1",
        "lessThan": "a500df43cde075f6ea4b8bae495d89f2c35b3e16",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1",
        "lessThan": "4cef512a955e4008ae4436a4fc97726976df1fdf",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1",
        "lessThan": "d348a715380bfcc6a611bdf722169d53fd01e735",
        "versionType": "git"
      },
      {
        "status": "affected",
        "version": "5c341ee1dfc8fe69d66b1c8b19e463c6d7201ae1",
        "lessThan": "b6ac0b3f6013c168f22cad97e79967accacb08e1",
        "versionType": "git"
      }
    ],
    "programFiles": [
      "mm/rmap.c",
      "mm/vma.c"
    ],
    "defaultStatus": "unaffected"
  },
  {
    "repo": "https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git",
    "vendor": "Linux",
    "product": "Linux",
    "versions": [
      {
        "status": "affected",
        "version": "2.6.36"
      },
      {
        "status": "unaffected",
        "version": "0",
        "lessThan": "2.6.36",
        "versionType": "semver"
      },
      {
        "status": "unaffected",
        "version": "6.6.160",
        "versionType": "semver",
        "lessThanOrEqual": "6.6.*"
      },
      {
        "status": "unaffected",
        "version": "6.12.112",
        "versionType": "semver",
        "lessThanOrEqual": "6.12.*"
      },
      {
        "status": "unaffected",
        "version": "6.18.55",
        "versionType": "semver",
        "lessThanOrEqual": "6.18.*"
      },
      {
        "status": "unaffected",
        "version": "7.2.9",
        "versionType": "semver",
        "lessThanOrEqual": "7.2.*"
      },
      {
        "status": "unaffected",
        "version": "7.3",
        "versionType": "original_commit_for_fix",
        "lessThanOrEqual": "*"
      }
    ],
    "programFiles": [
      "mm/rmap.c",
      "mm/vma.c"
    ],
    "defaultStatus": "affected"
  }
]
Related CVEs
CVE-2026-98507

Source reference: /cveMetadata/cveId

Publisher severity

high

Source reference: /containers/cna/metrics

Event
#55677 · Revision 1
Added to Heist Feed
Publisher date
Read the original announcement