summaryrefslogtreecommitdiffstats
path: root/arch/x86/mm/pageattr.c
diff options
context:
space:
mode:
authorAndy Lutomirski <luto@kernel.org>2016-07-23 18:59:28 +0200
committerIngo Molnar <mingo@kernel.org>2016-07-23 21:17:10 +0200
commit55920d31f1e3fea06702c74271dd56c4fc9b70ca (patch)
tree6057c2e50839c455f9c159db6ea98b6796d67968 /arch/x86/mm/pageattr.c
parentx86/mm/cpa: Fix populate_pgd(): Stop trying to deallocate failed PUDs (diff)
downloadlinux-55920d31f1e3fea06702c74271dd56c4fc9b70ca.tar.xz
linux-55920d31f1e3fea06702c74271dd56c4fc9b70ca.zip
x86/mm/cpa: Add missing comment in populate_pdg()
In commit: 21cbc2822aa1 ("x86/mm/cpa: Unbreak populate_pgd(): stop trying to deallocate failed PUDs") I intended to add this comment, but I failed at using git. Signed-off-by: Andy Lutomirski <luto@kernel.org> Cc: Borislav Petkov <bp@alien8.de> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/242baf8612394f4e31216f96d13c4d2e9b90d1b7.1469293159.git.luto@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to '')
-rw-r--r--arch/x86/mm/pageattr.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/x86/mm/pageattr.c b/arch/x86/mm/pageattr.c
index 2bc6ea153f76..47870a534877 100644
--- a/arch/x86/mm/pageattr.c
+++ b/arch/x86/mm/pageattr.c
@@ -1091,6 +1091,11 @@ static int populate_pgd(struct cpa_data *cpa, unsigned long addr)
ret = populate_pud(cpa, addr, pgd_entry, pgprot);
if (ret < 0) {
+ /*
+ * Leave the PUD page in place in case some other CPU or thread
+ * already found it, but remove any useless entries we just
+ * added to it.
+ */
unmap_pud_range(pgd_entry, addr,
addr + (cpa->numpages << PAGE_SHIFT));
return ret;