xtensa: fix potential NULL-pointer dereference
authorKirill A. Shutemov <kirill.shutemov@linux.intel.com>
Thu, 14 Nov 2013 22:31:19 +0000 (14:31 -0800)
committerLinus Torvalds <torvalds@linux-foundation.org>
Fri, 15 Nov 2013 00:32:15 +0000 (09:32 +0900)
Add missing check for memory allocation fail.

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Cc: Chris Zankel <chris@zankel.net>
Cc: Max Filippov <jcmvbkbc@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/xtensa/include/asm/pgalloc.h

index cf914c8c249a0b801efa0e6e5768c5c1392ec926..037671a655dcd07d1e09c4d0710d331083077891 100644 (file)
@@ -51,9 +51,13 @@ static inline pte_t *pte_alloc_one_kernel(struct mm_struct *mm,
 static inline pgtable_t pte_alloc_one(struct mm_struct *mm,
                                        unsigned long addr)
 {
+       pte_t *pte;
        struct page *page;
 
-       page = virt_to_page(pte_alloc_one_kernel(mm, addr));
+       pte = pte_alloc_one_kernel(mm, addr);
+       if (!pte)
+               return NULL;
+       page = virt_to_page(pte);
        pgtable_page_ctor(page);
        return page;
 }