Commit 8923648c authored by Paolo 'Blaisorblade' Giarrusso's avatar Paolo 'Blaisorblade' Giarrusso Committed by Linus Torvalds

[PATCH] uml: clear SKAS0/3 flags when running in TT mode

SEGV_MAYBE_FIXABLE tests ptrace_faultinfo, and depends on it being 1 only in
SKAS3 mode, while currently when running with mode=tt it will be 1 anyway.
Fix this, and do the same for proc_mm.
Signed-off-by: default avatarPaolo 'Blaisorblade' Giarrusso <blaisorblade@yahoo.it>
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent be662a18
...@@ -157,6 +157,10 @@ extern int os_lock_file(int fd, int excl); ...@@ -157,6 +157,10 @@ extern int os_lock_file(int fd, int excl);
extern void os_early_checks(void); extern void os_early_checks(void);
extern int can_do_skas(void); extern int can_do_skas(void);
/* Make sure they are clear when running in TT mode. Required by
* SEGV_MAYBE_FIXABLE */
#define clear_can_do_skas() do { ptrace_faultinfo = proc_mm = 0; } while (0)
/* mem.c */ /* mem.c */
extern int create_mem_file(unsigned long len); extern int create_mem_file(unsigned long len);
......
...@@ -334,6 +334,8 @@ int linux_main(int argc, char **argv) ...@@ -334,6 +334,8 @@ int linux_main(int argc, char **argv)
add_arg(DEFAULT_COMMAND_LINE); add_arg(DEFAULT_COMMAND_LINE);
os_early_checks(); os_early_checks();
if (force_tt)
clear_can_do_skas();
mode_tt = force_tt ? 1 : !can_do_skas(); mode_tt = force_tt ? 1 : !can_do_skas();
#ifndef CONFIG_MODE_TT #ifndef CONFIG_MODE_TT
if (mode_tt) { if (mode_tt) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment