# CVE-2026-63950: linux: In the Linux kernel, the following vulnerability has been resolved:  mm/rmap: initialize nr_pages to 1 at loop start...

CVE-2026-63950 is fixed in 20 products on 1 platform, first by ALAS2023-2026-1881, released June 22, 2026. It is not reported as exploited. Patch Radar priority: High.

- Web page: https://patchblox.com/security/cve/CVE-2026-63950
- Priority: High
- CVSS: 7.8 (high)
- EPSS: 0.0017
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: Jun 22, 2026

## Description

In the Linux kernel, the following vulnerability has been resolved:  mm/rmap: initialize nr_pages to 1 at loop start in try_to_unmap_one  Initialize nr_pages to 1 at the start of each loop iteration, like folio_referenced_one() does.  Without this, nr_pages computed by a previous folio_unmap_pte_batch() call can be reused on a later iteration that does not run folio_unmap_pte_batch() again.  mmap a 64K large folio with MAP_ANONYMOUS | MAP_DROPPABLE, then call madvise(MADV_FREE), then make the last page device-exclusive via HMM_DMIRROR_EXCLUSIVE.  Trigger node reclaim through sysfs.  Now, in try_to_unmap_one(), we will first clear the first 15 out of 16 entries mapping the lazyfree folio.  This will set nr_pages to 15.  In the next pvmw walk, this nr_pages gets reused on a device-exclusive pte, thus potentially corrupting folio refcount/mapcount.  At the moment, I have a userspace program which can make the kernel spit out a trace, but the blow up is in folio_referenced_one(), because there are existing bugs in the interaction between device-private and rmap (which too I am investigating).  I did a one liner kernel change to avoid going into folio_referenced_one(), and the kernel blows up at folio_remove_rmap_ptes in try_to_unmap_one which is what I wanted.  Note that the bug is there not since file folio batching but lazyfree folio batching, since device-exclusive only works for anonymous folios.  Userspace visible effect is simply kernel crashing somewhere due to refcount/mapcount corruption.

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | bpftool6.18 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | bpftool6.18-debuginfo amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel-livepatch-6.18.35-68.127 amzn 2023 | 1:1.0-0.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-debuginfo amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-debuginfo-common-aarch64 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-debuginfo-common-x86_64 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-devel amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-headers amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-modules-extra amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-modules-extra-common amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-tools amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-tools-debuginfo amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | kernel6.18-tools-devel amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | linux Debian 14 | 7.0.12-1 | [DEBIAN-CVE-2026-63950](https://patchblox.com/security/data/fix/linux/debian-cve-2026-63950.md) | Jul 20, 2026 |
| Linux | microvm-kernel6.18 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | perf6.18 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | perf6.18-debuginfo amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | python3-perf6.18 amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |
| Linux | python3-perf6.18-debuginfo amzn 2023 | 1:6.18.35-68.127.amzn2023 | [ALAS2023-2026-1881](https://patchblox.com/security/data/fix/linux/alas2023-2026-1881.md) | Jun 22, 2026 |

---

Data as of 2026-11-10T20:03:11Z UTC. Source: Patchblox Patch Radar (https://patchblox.com/security/patch-radar). Patchblox finds out-of-date software on Windows, macOS and Linux and updates it through release rings: https://patchblox.com/demo

Free to use with attribution: show "Data: Patchblox Patch Radar" with a link to https://patchblox.com/security/patch-radar. Terms, including what needs a written agreement: https://patchblox.com/security/patch-radar/use-the-data

Product names, logos and trademarks shown on Patch Radar belong to their respective owners. They are used only to identify the software each security fix applies to and to help readers find their platform. Their use does not imply any affiliation with, or endorsement by, those owners, and Patchblox is not affiliated with any of them.
