Skip to content

Commit

Permalink
s390/uaccess: introduce 'uaccesspt' kernel parameter
Browse files Browse the repository at this point in the history
The uaccesspt kernel parameter allows to enforce using the uaccess page
table walk variant. This is mainly for debugging purposes, so this mode
can also be enabled on machines which support the mvcos instruction.

Signed-off-by: Heiko Carstens <heiko.carstens@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
  • Loading branch information
Heiko Carstens authored and Martin Schwidefsky committed Feb 21, 2014
1 parent 7385d0a commit 56f15e5
Showing 1 changed file with 14 additions and 1 deletion.
15 changes: 14 additions & 1 deletion arch/s390/lib/uaccess_mvcos.c
Original file line number Diff line number Diff line change
Expand Up @@ -241,9 +241,22 @@ long __strncpy_from_user(char *dst, const char __user *src, long count)
}
EXPORT_SYMBOL(__strncpy_from_user);

/*
* The uaccess page tabe walk variant can be enforced with the "uaccesspt"
* kernel parameter. This is mainly for debugging purposes.
*/
static int force_uaccess_pt __initdata;

static int __init parse_uaccess_pt(char *__unused)
{
force_uaccess_pt = 1;
return 0;
}
early_param("uaccesspt", parse_uaccess_pt);

static int __init uaccess_init(void)
{
if (IS_ENABLED(CONFIG_32BIT) || !test_facility(27))
if (IS_ENABLED(CONFIG_32BIT) || force_uaccess_pt || !test_facility(27))
static_key_slow_dec(&have_mvcos);
return 0;
}
Expand Down

0 comments on commit 56f15e5

Please sign in to comment.