From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from smtp.kernel.org (aws-us-west-2-korg-mail-alma10-1.taild15c8.ts.net [100.103.45.18]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id A69E249EC5D for ; Sun, 18 Oct 2026 15:24:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=100.103.45.18 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1792337043; cv=none; b=ujh4sFyrDrS9RMxT+ns68qZ49nMUcSj3U8bcsXLxSdNt00UckW6LWXSdyWIBxO3NKO5WTluMPoDPXxdIKWAqnEfqEFWEIl8xlGCPQRXN2hqa9YKRYl4LzTGkSOU5C8GL1JtuEVB2BISfu7OmoSi97sWx5eKtCvaYk2Wa+91u3MM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1792337043; c=relaxed/simple; bh=REDUeqmSLDolYAuygCmCaHPELQNCwKg5tmWEMGzED7M=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=mPz+1vEcsApIlZthQK6hWpopPsbTwakTnpEFYjQbH+kgvh9gTiB7lWWxPPO6Xqac5+Wmkl4TxnhD0l8BMsNcHhAwl42sSSoVQpW8lCkEB/rRpdL9VG8GonSfzETMn0qfBBlQUPkIlGLrBUjZ83piJGCszW/aY+i7rpNuQcnxZP0= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b=lDTGje8M; arc=none smtp.client-ip=100.103.45.18 Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linuxfoundation.org header.i=@linuxfoundation.org header.b="lDTGje8M" Received: by smtp.kernel.org (Postfix) with ESMTPSA id BDD171F000C4; Sun, 18 Oct 2026 15:24:00 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linuxfoundation.org; s=korg; t=1792337041; bh=2h/uHGlQq3Z3cH5WPqt5BPgRpQfGWn4Pf8XcYfzdI9E=; h=From:To:Cc:Subject:Date:Reply-To; b=lDTGje8MCYBNNrYv/6n8+U/89D2pglL/Siyco750Wq9mLq5FrvEaF/e1BJvKqj5q1 T3lV3b2gQF68XGEG0ahkXm64GHT7gwKe0OaRZhXghh7Nq/6ikB4EpNn7qfDSfuPOqz /nTUYtr4SthdxD+PDVcPcSbcKHz7brFyYQVl1nfU= From: Greg Kroah-Hartman To: linux-cve-announce@vger.kernel.org Cc: Greg Kroah-Hartman Subject: CVE-2026-98505: mm/damon/vaddr: avoid hw-driven pte updates during damon_hugetlb_mkold() Date: Sun, 18 Oct 2026 17:16:09 +0200 Message-ID: <2026101819-CVE-2026-98505-9505@gregkh> X-Mailer: git-send-email 2.56.0 Reply-To: , Precedence: bulk X-Mailing-List: linux-cve-announce@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-Developer-Signature: v=1; a=openpgp-sha256; l=3208; i=gregkh@linuxfoundation.org; h=from:subject:message-id; bh=38f20NipCZ6FHsD8Uf9/9JaeSDe+b86o72Imhx00Dmw=; b=owGbwMvMwCRo6H6F97bub03G02pJDFlXHrWfzubI8ynzE7eb49rZ61U55d223LkTF95KLf+tL uA2t+xyRywLgyATg6yYIsuXbTxH91ccUvQytD0NM4eVCWQIAxenAEykqZlhruScV1bSU2crOOws 5/+p4nti5VQxTYb5vlOjHtR86eJT0ZHN5P21+oBR8U11AA== X-Developer-Key: i=gregkh@linuxfoundation.org; a=openpgp; fpr=F4B60CC5BF78C2214A313DCB3147D40DDB2DFB29 Content-Transfer-Encoding: 8bit From: Greg Kroah-Hartman Description =========== In the Linux kernel, the following vulnerability has been resolved: mm/damon/vaddr: avoid hw-driven pte updates during damon_hugetlb_mkold() damon_hugetlb_mkold() reads the page table entry into a local variable, unsets the accessed bit in the variable, and updates the page table entry with the updated variable value. If hardware updates the same page table entry in parallel, the hw updates could be lost. For example, hardware-updated dirty bits might be lost. Avoid the parallel updates by clearing the page table entry when reading it together, using huge_ptep_get_and_clear(). If a parallel write to the memory is made after the clearing, the hw will see the page table entry is cleared, trigger page fault and wait until it is handled. The page fault handling will wait for damon_hugetlb_mkold() due to the page table lock. Because hugetlbfs is an in-memory file system and hugetlb pages cannot be reclaimed, no critical issue is expected to my best knowledge. But definitely this is a nasty bug that should be fixed sooner rather than later. The issue was discovered [1] by Sashiko. The Linux kernel CVE team has assigned CVE-2026-98505 to this issue. Affected and fixed versions =========================== Issue introduced in 5.17 with commit 49f4203aae06ba9d67b500c90339b262b0a52637 and fixed in 6.12.112 with commit 00457981327c80bcc56e07d4714fe189337a19fa Issue introduced in 5.17 with commit 49f4203aae06ba9d67b500c90339b262b0a52637 and fixed in 6.18.55 with commit e59cb7eda7c06334a0faf5aa44adb6acf2a1287a Issue introduced in 5.17 with commit 49f4203aae06ba9d67b500c90339b262b0a52637 and fixed in 7.2.9 with commit 6e74ffc9ecf6ec24eee117150da78a1102be74c5 Issue introduced in 5.17 with commit 49f4203aae06ba9d67b500c90339b262b0a52637 and fixed in 7.3-rc5 with commit 39c0ceedd54557bdc1542de08d22b2ed33e534e4 Please see https://www.kernel.org for a full list of currently supported kernel versions by the kernel community. Unaffected versions might change over time as fixes are backported to older supported kernel versions. The official CVE entry at https://cve.org/CVERecord/?id=CVE-2026-98505 will be updated if fixes are backported, please check that for the most up to date information about this issue. Affected files ============== The file(s) affected by this issue are: mm/damon/vaddr.c Mitigation ========== The Linux kernel CVE team recommends that you update to the latest stable kernel version for this, and many other bugfixes. Individual changes are never tested alone, but rather are part of a larger kernel release. Cherry-picking individual commits is not recommended or supported by the Linux kernel community at all. If however, updating to the latest release is impossible, the individual changes to resolve this issue can be found at these commits: https://git.kernel.org/stable/c/00457981327c80bcc56e07d4714fe189337a19fa https://git.kernel.org/stable/c/e59cb7eda7c06334a0faf5aa44adb6acf2a1287a https://git.kernel.org/stable/c/6e74ffc9ecf6ec24eee117150da78a1102be74c5 https://git.kernel.org/stable/c/39c0ceedd54557bdc1542de08d22b2ed33e534e4