frv: handle pgtable_page_ctor() fail

Signed-off-by: Kirill A. Shutemov <kirill.shutemov@linux.intel.com>
Acked-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
Kirill A. Shutemov 2013-11-14 14:31:30 -08:00 коммит произвёл Linus Torvalds
Родитель 0da5303bdb
Коммит 3b9cf77d1a
1 изменённых файлов: 8 добавлений и 4 удалений

Просмотреть файл

@ -37,11 +37,15 @@ pgtable_t pte_alloc_one(struct mm_struct *mm, unsigned long address)
#else #else
page = alloc_pages(GFP_KERNEL|__GFP_REPEAT, 0); page = alloc_pages(GFP_KERNEL|__GFP_REPEAT, 0);
#endif #endif
if (page) { if (!page)
clear_highpage(page); return NULL;
pgtable_page_ctor(page);
flush_dcache_page(page); clear_highpage(page);
if (!pgtable_page_ctor(page)) {
__free_page(page);
return NULL;
} }
flush_dcache_page(page);
return page; return page;
} }