aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/signal_32.c
diff options
context:
space:
mode:
authorHiroshi Shimamoto <h-shimamoto@ct.jp.nec.com>2008-09-23 17:21:45 -0700
committerIngo Molnar <mingo@elte.hu>2008-09-24 09:35:54 +0200
commitee847c54ba7fc09f85f13a5bf18f45ea6c19aa83 (patch)
tree4a7b2f98df43c2f1a026ecfe57a97ab452176dc3 /arch/x86/kernel/signal_32.c
parent5fd933303bd1efacbd0acbe452ba9b889440eb40 (diff)
downloadkernel_samsung_smdk4412-ee847c54ba7fc09f85f13a5bf18f45ea6c19aa83.zip
kernel_samsung_smdk4412-ee847c54ba7fc09f85f13a5bf18f45ea6c19aa83.tar.gz
kernel_samsung_smdk4412-ee847c54ba7fc09f85f13a5bf18f45ea6c19aa83.tar.bz2
x86: signal: cosmetic unification of do_notify_resume()
Make do_notify_resume() same. Signed-off-by: Hiroshi Shimamoto <h-shimamoto@ct.jp.nec.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/signal_32.c')
-rw-r--r--arch/x86/kernel/signal_32.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/x86/kernel/signal_32.c b/arch/x86/kernel/signal_32.c
index da3cf32..b94463f 100644
--- a/arch/x86/kernel/signal_32.c
+++ b/arch/x86/kernel/signal_32.c
@@ -663,6 +663,12 @@ static void do_signal(struct pt_regs *regs)
void
do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags)
{
+#if defined(CONFIG_X86_64) && defined(CONFIG_X86_MCE)
+ /* notify userspace of pending MCEs */
+ if (thread_info_flags & _TIF_MCE_NOTIFY)
+ mce_notify_user();
+#endif /* CONFIG_X86_64 && CONFIG_X86_MCE */
+
/* deal with pending signal delivery */
if (thread_info_flags & _TIF_SIGPENDING)
do_signal(regs);
@@ -672,7 +678,9 @@ do_notify_resume(struct pt_regs *regs, void *unused, __u32 thread_info_flags)
tracehook_notify_resume(regs);
}
+#ifdef CONFIG_X86_32
clear_thread_flag(TIF_IRET);
+#endif /* CONFIG_X86_32 */
}
void signal_fault(struct pt_regs *regs, void __user *frame, char *where)