diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-11 21:49:08 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2012-10-11 21:49:08 -0400 |
commit | 8213a2f3eeafdecf06dd718cb4130372263f6067 (patch) | |
tree | 0d02e3201dac64d1429f8552ee1163d4a1ef1646 /arch/ia64 | |
parent | 40924754f2cabd5d9af4bcd4dcecc362b5e0baa1 (diff) | |
parent | 12f79be93d94698778ff2b3f921073fc5f6780d6 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Pull pile 2 of execve and kernel_thread unification work from Al Viro:
"Stuff in there: kernel_thread/kernel_execve/sys_execve conversions for
several more architectures plus assorted signal fixes and cleanups.
There'll be more (in particular, real fixes for the alpha
do_notify_resume() irq mess)..."
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal: (43 commits)
alpha: don't open-code trace_report_syscall_{enter,exit}
Uninclude linux/freezer.h
m32r: trim masks
avr32: trim masks
tile: don't bother with SIGTRAP in setup_frame
microblaze: don't bother with SIGTRAP in setup_rt_frame()
mn10300: don't bother with SIGTRAP in setup_frame()
frv: no need to raise SIGTRAP in setup_frame()
x86: get rid of duplicate code in case of CONFIG_VM86
unicore32: remove pointless test
h8300: trim _TIF_WORK_MASK
parisc: decide whether to go to slow path (tracesys) based on thread flags
parisc: don't bother looping in do_signal()
parisc: fix double restarts
bury the rest of TIF_IRET
sanitize tsk_is_polling()
bury _TIF_RESTORE_SIGMASK
unicore32: unobfuscate _TIF_WORK_MASK
mips: NOTIFY_RESUME is not needed in TIF masks
mips: merge the identical "return from syscall" per-ABI code
...
Conflicts:
arch/arm/include/asm/thread_info.h
Diffstat (limited to 'arch/ia64')
-rw-r--r-- | arch/ia64/include/asm/thread_info.h | 2 | ||||
-rw-r--r-- | arch/ia64/kernel/signal.c | 8 |
2 files changed, 0 insertions, 10 deletions
diff --git a/arch/ia64/include/asm/thread_info.h b/arch/ia64/include/asm/thread_info.h index f7ee85378311..ff2ae4136584 100644 --- a/arch/ia64/include/asm/thread_info.h +++ b/arch/ia64/include/asm/thread_info.h | |||
@@ -106,7 +106,6 @@ struct thread_info { | |||
106 | #define TIF_SYSCALL_AUDIT 3 /* syscall auditing active */ | 106 | #define TIF_SYSCALL_AUDIT 3 /* syscall auditing active */ |
107 | #define TIF_SINGLESTEP 4 /* restore singlestep on return to user mode */ | 107 | #define TIF_SINGLESTEP 4 /* restore singlestep on return to user mode */ |
108 | #define TIF_NOTIFY_RESUME 6 /* resumption notification requested */ | 108 | #define TIF_NOTIFY_RESUME 6 /* resumption notification requested */ |
109 | #define TIF_POLLING_NRFLAG 16 /* true if poll_idle() is polling TIF_NEED_RESCHED */ | ||
110 | #define TIF_MEMDIE 17 /* is terminating due to OOM killer */ | 109 | #define TIF_MEMDIE 17 /* is terminating due to OOM killer */ |
111 | #define TIF_MCA_INIT 18 /* this task is processing MCA or INIT */ | 110 | #define TIF_MCA_INIT 18 /* this task is processing MCA or INIT */ |
112 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ | 111 | #define TIF_DB_DISABLED 19 /* debug trap disabled for fsyscall */ |
@@ -119,7 +118,6 @@ struct thread_info { | |||
119 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) | 118 | #define _TIF_NOTIFY_RESUME (1 << TIF_NOTIFY_RESUME) |
120 | #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) | 119 | #define _TIF_SIGPENDING (1 << TIF_SIGPENDING) |
121 | #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) | 120 | #define _TIF_NEED_RESCHED (1 << TIF_NEED_RESCHED) |
122 | #define _TIF_POLLING_NRFLAG (1 << TIF_POLLING_NRFLAG) | ||
123 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) | 121 | #define _TIF_MCA_INIT (1 << TIF_MCA_INIT) |
124 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) | 122 | #define _TIF_DB_DISABLED (1 << TIF_DB_DISABLED) |
125 | #define _TIF_RESTORE_RSE (1 << TIF_RESTORE_RSE) | 123 | #define _TIF_RESTORE_RSE (1 << TIF_RESTORE_RSE) |
diff --git a/arch/ia64/kernel/signal.c b/arch/ia64/kernel/signal.c index 37dd79511cbe..680b73786be8 100644 --- a/arch/ia64/kernel/signal.c +++ b/arch/ia64/kernel/signal.c | |||
@@ -438,14 +438,6 @@ ia64_do_signal (struct sigscratch *scr, long in_syscall) | |||
438 | long errno = scr->pt.r8; | 438 | long errno = scr->pt.r8; |
439 | 439 | ||
440 | /* | 440 | /* |
441 | * In the ia64_leave_kernel code path, we want the common case to go fast, which | ||
442 | * is why we may in certain cases get here from kernel mode. Just return without | ||
443 | * doing anything if so. | ||
444 | */ | ||
445 | if (!user_mode(&scr->pt)) | ||
446 | return; | ||
447 | |||
448 | /* | ||
449 | * This only loops in the rare cases of handle_signal() failing, in which case we | 441 | * This only loops in the rare cases of handle_signal() failing, in which case we |
450 | * need to push through a forced SIGSEGV. | 442 | * need to push through a forced SIGSEGV. |
451 | */ | 443 | */ |