# CVE-2026-53108: powerpc/64s: Fix unmap race with PMD migration entries

CVE-2026-53108 is fixed in 16 products on 1 platform, first by DEBIAN-CVE-2026-53108, released June 25, 2026. It is not reported as exploited. Patch Radar priority: Routine.

- Web page: https://patchblox.com/security/cve/CVE-2026-53108
- Priority: Routine
- CVSS: 5.5 (Moderate)
- EPSS: 0.0009
- CISA KEV: not listed
- Exploited (vendor report): no
- Publicly disclosed: no
- Published: Jun 24, 2026
- Vendor advisory: https://msrc.microsoft.com/update-guide/vulnerability/CVE-2026-53108

## Description

In the Linux kernel, the following vulnerability has been resolved:  powerpc/64s: Fix unmap race with PMD migration entries  The following race is possible with migration swap entries or device-private THP entries. e.g. when move_pages is called on a PMD THP page, then there maybe an intermediate state, where PMD entry acts as a migration swap entry (pmd_present() is true). Then if an munmap happens at the same time, then this VM_BUG_ON() can happen in pmdp_huge_get_and_clear_full().  This patch fixes that.  Thread A: move_pages() syscall   add_folio_for_migration()     mmap_read_lock(mm)     folio_isolate_lru(folio)     mmap_read_unlock(mm)    do_move_pages_to_node()     migrate_pages()       try_to_migrate_one()         spin_lock(ptl)         set_pmd_migration_entry()           pmdp_invalidate()     # PMD: _PAGE_INVALID | _PAGE_PTE | pfn           set_pmd_at()          # PMD: migration swap entry (pmd_present=0)         spin_unlock(ptl)         [page copy phase]       # <--- RACE WINDOW -->  Thread B: munmap()   mmap_write_downgrade(mm)   unmap_vmas() -> zap_pmd_range()     zap_huge_pmd()       __pmd_trans_huge_lock()         pmd_is_huge():          # !pmd_present && !pmd_none -> TRUE (swap entry)         pmd_lock() -> 		# spin_lock(ptl), waits for Thread A to release ptl       pmdp_huge_get_and_clear_full()         VM_BUG_ON(!pmd_present(*pmdp))  # HITS!  [  287.738700][ T1867] ------------[ cut here ]------------ [  287.743843][ T1867] kernel BUG at arch/powerpc/mm/book3s64/pgtable.c:187! cpu 0x0: Vector: 700 (Program Check) at [c00000044037f4f0]     pc: c000000000094ca4: pmdp_huge_get_and_clear_full+0x6c/0x23c     lr: c000000000645dec: zap_huge_pmd+0xb0/0x868     sp: c00000044037f790    msr: 800000000282b033   current = 0xc0000004032c1a00   paca    = 0xc000000004fe0000   irqmask: 0x03   irq_happened: 0x09     pid   = 1867, comm = a.out kernel BUG at :187! Linux version 6.19.0-12136-g14360d4f917c-dirty (powerpc64le-linux-gnu-gcc (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #27 SMP PREEMPT Sun Feb 22 10:38:56 IST 2026 enter ? for help [link register   ] c000000000645dec zap_huge_pmd+0xb0/0x868 [c00000044037f790] c00000044037f7d0 (unreliable) [c00000044037f7d0] c000000000645dcc zap_huge_pmd+0x90/0x868 [c00000044037f840] c0000000005724cc unmap_page_range+0x176c/0x1f40 [c00000044037fa00] c000000000572ea0 unmap_vmas+0xb0/0x1d8 [c00000044037fa90] c0000000005af254 unmap_region+0xb4/0x128 [c00000044037fb50] c0000000005af400 vms_complete_munmap_vmas+0x138/0x310 [c00000044037fbe0] c0000000005b0f1c do_vmi_align_munmap+0x1ec/0x238 [c00000044037fd30] c0000000005b3688 __vm_munmap+0x170/0x1f8 [c00000044037fdf0] c000000000587f74 sys_munmap+0x2c/0x40 [c00000044037fe10] c000000000032668 system_call_exception+0x128/0x350 [c00000044037fe50] c00000000000d05c system_call_vectored_common+0x15c/0x2ec ---- Exception: 3000 (System Call Vectored) at 0000000010064a2c SP (7fff9b1ee9c0) is in userspace 0:mon> zh  commit a30b48bf1b24 ("mm/migrate_device: implement THP migration of zone device pages"), enabled migration for device-private PMD entries. Hence this is one other path where this warning could get trigger from.   ------------[ cut here ]------------  WARNING: arch/powerpc/mm/book3s64/hash_pgtable.c:199 at hash__pmd_hugepage_update+0x48/0x284, CPU#3: hmm-tests/1905  Modules linked in: test_hmm  CPU: 3 UID: 0 PID: 1905 Comm: hmm-tests Tainted: G    B   W    L   N  7.0.0-rc1-01438-g7e2f0ee7581c #21 PREEMPT  Tainted: [B]=BAD_PAGE, [W]=WARN, [L]=SOFTLOCKUP, [N]=TEST  Hardware name: IBM pSeries (emulated by qemu) POWER10 (architected) 0x801200 0xf000006 of:SLOF,git-ee03ae pSeries  NIP [c000000000096b70] hash__pmd_hugepage_update+0x48/0x284  LR [c000000000096e7c] hash__pmdp_huge_get_and_clear+0xd0/0xd4  Call Trace:  [c000000604707670] [c000000004e102b8] 0xc000000004e102b8 (unreliable)  [c000000604707700] [c00000000064ec3c] set_pmd_migration_entry+0x414/0x498  [c000000604707760] [c00000000063e5a4] migrate_vma_col ---truncated---

## Where it's fixed

| Platform | Product | Fixed in | Fix | Released |
|---|---|---|---|---|
| Linux | dtb-aarch64 opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-64kb opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-64kb sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-64kb sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-azure opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-azure sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-azure sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-default opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-default sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-default sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-default-base opensuse-leap 16.0 | 6.12.0-160000.40.1.160000.2.29 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-default-base sles 15.7 | 6.4.0-150700.53.87.3.150700.17.49.2 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-default-base sles 16.0 | 6.12.0-160000.40.1.160000.2.29 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-docs opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-docs sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-docs sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-kvmsmall opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-kvmsmall sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-livepatch-SLE15-SP7-RT_Update_22 sles 15.7 | 1-150700.1.3.1 | [SUSE-SU-2026:4940-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4940-1.md) | Nov 7, 2026 |
| Linux | kernel-livepatch-SLE15-SP7_Update_23 sles 15.7 | 1-150700.15.3.2 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-obs-build opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-obs-build sles 15.7 | 6.4.0-150700.53.87.2 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-obs-qa opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-obs-qa sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-rt opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-source opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-source sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-source sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-syms opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-syms sles 15.7 | 6.4.0-150700.53.87.1 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-syms sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | kernel-zfcpdump opensuse-leap 16.0 | 6.12.0-160000.40.1 | [OPENSUSE-SU-2026:22167-1](https://patchblox.com/security/data/fix/linux/opensuse-su-2026-22167-1.md) | Nov 7, 2026 |
| Linux | kernel-zfcpdump sles 15.7 | 6.4.0-150700.53.87.3 | [SUSE-SU-2026:4935-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-4935-1.md) | Nov 7, 2026 |
| Linux | kernel-zfcpdump sles 16.0 | 6.12.0-160000.40.1 | [SUSE-SU-2026:24446-1](https://patchblox.com/security/data/fix/linux/suse-su-2026-24446-1.md) | Nov 7, 2026 |
| Linux | linux Debian 13.5 (trixie) | 6.12.115-2 | [DEBIAN-CVE-2026-53108](https://patchblox.com/security/data/fix/linux/debian-cve-2026-53108.md) | Jun 25, 2026 |
| Linux | linux Debian 14 | 7.0.10-1 | [DEBIAN-CVE-2026-53108](https://patchblox.com/security/data/fix/linux/debian-cve-2026-53108.md) | Jun 25, 2026 |

---

Data as of 2026-11-08T19:12:23Z 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.
