UBUNTU: xen: Check for NULL pointer before using pgd
In pgd_alloc(), the test for the new pgd being NULL is done
after it has already been used for test_and_unpin(). Do that
check before.
BugLink: http://bugs.launchpad.net/bugs/705562
Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
---
arch/x86/mm/pgtable_32-xen.c | 5 ++++-
1 files changed, 4 insertions(+), 1 deletions(-)
diff --git a/arch/x86/mm/pgtable_32-xen.c b/arch/x86/mm/pgtable_32-xen.c
index 74a2e57..48242aa 100644
--- a/arch/x86/mm/pgtable_32-xen.c
+++ b/arch/x86/mm/pgtable_32-xen.c
@@ -345,9 +345,12 @@ pgd_t *pgd_alloc(struct mm_struct *mm)
pmd_t **pmds = NULL;
unsigned long flags;
+ if (!pgd)
+ return NULL;
+
pgd_test_and_unpin(pgd);
- if (PTRS_PER_PMD == 1 || !pgd)
+ if (PTRS_PER_PMD == 1)
return pgd;
#ifdef CONFIG_XEN
--
1.7.4.1
--
kernel-team mailing list
kernel-team@lists.ubuntu.com
https://lists.ubuntu.com/mailman/listinfo/kernel-team
|