diff options
| author | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2013-09-24 09:14:56 +0200 | 
|---|---|---|
| committer | Martin Schwidefsky <schwidefsky@de.ibm.com> | 2013-10-24 17:16:57 +0200 | 
| commit | e258d719ff28ecc7a048eb8f78380e68c4b3a3f0 (patch) | |
| tree | 1c7f496b97cef1111b230371940e603a2ca401a4 /arch/s390/mm/fault.c | |
| parent | 7d7c7b24e416afb2637be8447e03ca4457c100fd (diff) | |
s390/uaccess: always run the kernel in home space
Simplify the uaccess code by removing the user_mode=home option.
The kernel will now always run in the home space mode.
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/mm/fault.c')
| -rw-r--r-- | arch/s390/mm/fault.c | 9 | 
1 files changed, 2 insertions, 7 deletions
| diff --git a/arch/s390/mm/fault.c b/arch/s390/mm/fault.c index fc6679210d83..8f29762671cf 100644 --- a/arch/s390/mm/fault.c +++ b/arch/s390/mm/fault.c @@ -115,13 +115,8 @@ static inline int user_space_fault(unsigned long trans_exc_code)  	if (trans_exc_code == 2)  		/* Access via secondary space, set_fs setting decides */  		return current->thread.mm_segment.ar4; -	if (s390_user_mode == HOME_SPACE_MODE) -		/* User space if the access has been done via home space. */ -		return trans_exc_code == 3;  	/* -	 * If the user space is not the home space the kernel runs in home -	 * space. Access via secondary space has already been covered, -	 * access via primary space or access register is from user space +	 * Access via primary space or access register is from user space  	 * and access via home space is from the kernel.  	 */  	return trans_exc_code != 3; @@ -471,7 +466,7 @@ int __handle_fault(unsigned long uaddr, unsigned long pgm_int_code, int write)  	int access, fault;  	/* Emulate a uaccess fault from kernel mode. */ -	regs.psw.mask = psw_kernel_bits | PSW_MASK_DAT | PSW_MASK_MCHECK; +	regs.psw.mask = PSW_KERNEL_BITS | PSW_MASK_DAT | PSW_MASK_MCHECK;  	if (!irqs_disabled())  		regs.psw.mask |= PSW_MASK_IO | PSW_MASK_EXT;  	regs.psw.addr = (unsigned long) __builtin_return_address(0); | 
