diff options
Diffstat (limited to 'arch/x86/kernel/process.c')
-rw-r--r-- | arch/x86/kernel/process.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/arch/x86/kernel/process.c b/arch/x86/kernel/process.c index 744508e7cfdd..7a7bd4e3ec49 100644 --- a/arch/x86/kernel/process.c +++ b/arch/x86/kernel/process.c | |||
@@ -9,6 +9,9 @@ | |||
9 | #include <linux/pm.h> | 9 | #include <linux/pm.h> |
10 | #include <linux/clockchips.h> | 10 | #include <linux/clockchips.h> |
11 | #include <linux/random.h> | 11 | #include <linux/random.h> |
12 | #include <linux/user-return-notifier.h> | ||
13 | #include <linux/dmi.h> | ||
14 | #include <linux/utsname.h> | ||
12 | #include <trace/events/power.h> | 15 | #include <trace/events/power.h> |
13 | #include <linux/hw_breakpoint.h> | 16 | #include <linux/hw_breakpoint.h> |
14 | #include <asm/system.h> | 17 | #include <asm/system.h> |
@@ -89,6 +92,25 @@ void exit_thread(void) | |||
89 | } | 92 | } |
90 | } | 93 | } |
91 | 94 | ||
95 | void show_regs_common(void) | ||
96 | { | ||
97 | const char *board, *product; | ||
98 | |||
99 | board = dmi_get_system_info(DMI_BOARD_NAME); | ||
100 | if (!board) | ||
101 | board = ""; | ||
102 | product = dmi_get_system_info(DMI_PRODUCT_NAME); | ||
103 | if (!product) | ||
104 | product = ""; | ||
105 | |||
106 | printk("\n"); | ||
107 | printk(KERN_INFO "Pid: %d, comm: %.20s %s %s %.*s %s/%s\n", | ||
108 | current->pid, current->comm, print_tainted(), | ||
109 | init_utsname()->release, | ||
110 | (int)strcspn(init_utsname()->version, " "), | ||
111 | init_utsname()->version, board, product); | ||
112 | } | ||
113 | |||
92 | void flush_thread(void) | 114 | void flush_thread(void) |
93 | { | 115 | { |
94 | struct task_struct *tsk = current; | 116 | struct task_struct *tsk = current; |
@@ -209,6 +231,7 @@ void __switch_to_xtra(struct task_struct *prev_p, struct task_struct *next_p, | |||
209 | */ | 231 | */ |
210 | memset(tss->io_bitmap, 0xff, prev->io_bitmap_max); | 232 | memset(tss->io_bitmap, 0xff, prev->io_bitmap_max); |
211 | } | 233 | } |
234 | propagate_user_return_notify(prev_p, next_p); | ||
212 | } | 235 | } |
213 | 236 | ||
214 | int sys_fork(struct pt_regs *regs) | 237 | int sys_fork(struct pt_regs *regs) |