s390/uaccess: test if current->mm is set before walking page tables
authorHeiko Carstens <heiko.carstens@de.ibm.com>
Fri, 17 Jan 2014 12:12:34 +0000 (13:12 +0100)
committerMartin Schwidefsky <schwidefsky@de.ibm.com>
Wed, 22 Jan 2014 13:02:16 +0000 (14:02 +0100)
commitb03b467944b3e88a36a33b5429425c42dbd5b8a0
tree57c5b36c72106e35e9ab9ca929946e5656373296
parent05e9181bdba4b1eb8f8eac5fd925df5223d16308
s390/uaccess: test if current->mm is set before walking page tables

If get_fs() == USER_DS we better test if current->mm is not zero before
walking page tables.
The page table walk code would try to lock mm->page_table_lock, however
if mm is zero this might crash.

Now it is arguably incorrect trying to access userspace if current->mm
is zero, however we have seen that and s390 would be the only architecture
which would crash in such a case.
So we better make the page table walk code a bit more robust and report
always a fault instead.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
arch/s390/lib/uaccess_pt.c