Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
fork

Configure Feed

Select the types of activity you want to include in your feed.

s390/mm: Add NULL pointer check to crst_table_free() base_crst_free()

crst_table_free() used to work with NULL pointers before the conversion
to ptdescs. Since crst_table_free() can be called with a NULL pointer
(error handling in crst_table_upgrade() add an explicit check.

Also add the same check to base_crst_free() for consistency reasons.

In real life this should not happen, since order two GFP_KERNEL
allocations will not fail, unless FAIL_PAGE_ALLOC is enabled and used.

Reported-by: Yunseong Kim <yskelg@gmail.com>
Fixes: 6326c26c1514 ("s390: convert various pgalloc functions to use ptdescs")
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
Acked-by: Alexander Gordeev <agordeev@linux.ibm.com>
Cc: stable@kernel.org
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

Heiko Carstens and committed by
Linus Torvalds
b5efb63a 4376e966

+4
+4
arch/s390/mm/pgalloc.c
··· 55 55 56 56 void crst_table_free(struct mm_struct *mm, unsigned long *table) 57 57 { 58 + if (!table) 59 + return; 58 60 pagetable_free(virt_to_ptdesc(table)); 59 61 } 60 62 ··· 264 262 265 263 static void base_crst_free(unsigned long *table) 266 264 { 265 + if (!table) 266 + return; 267 267 pagetable_free(virt_to_ptdesc(table)); 268 268 } 269 269