aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/traps_64.c
diff options
context:
space:
mode:
authorAlexander van Heukelum <heukelum@fastmail.fm>2008-10-03 16:00:35 -0400
committerIngo Molnar <mingo@elte.hu>2008-10-13 04:33:24 -0400
commit1c9af8a9f448abfe13f17fa76b7ca72b588a1edb (patch)
tree110164ddbd9c0506190bba9818f1f5c7b2067b07 /arch/x86/kernel/traps_64.c
parent4915a35e35a037254550a2ba9f367a812bc37d40 (diff)
traps: x86_64: make io_check_error equal to the one on i386
Make io_check_error equal to the one on i386. Signed-off-by: Alexander van Heukelum <heukelum@fastmail.fm> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch/x86/kernel/traps_64.c')
-rw-r--r--arch/x86/kernel/traps_64.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/arch/x86/kernel/traps_64.c b/arch/x86/kernel/traps_64.c
index 00406c99aee4..7853f488cd6c 100644
--- a/arch/x86/kernel/traps_64.c
+++ b/arch/x86/kernel/traps_64.c
@@ -252,13 +252,19 @@ mem_parity_error(unsigned char reason, struct pt_regs *regs)
252static notrace __kprobes void 252static notrace __kprobes void
253io_check_error(unsigned char reason, struct pt_regs *regs) 253io_check_error(unsigned char reason, struct pt_regs *regs)
254{ 254{
255 printk("NMI: IOCK error (debug interrupt?)\n"); 255 unsigned long i;
256
257 printk(KERN_EMERG "NMI: IOCK error (debug interrupt?)\n");
256 show_registers(regs); 258 show_registers(regs);
257 259
258 /* Re-enable the IOCK line, wait for a few seconds */ 260 /* Re-enable the IOCK line, wait for a few seconds */
259 reason = (reason & 0xf) | 8; 261 reason = (reason & 0xf) | 8;
260 outb(reason, 0x61); 262 outb(reason, 0x61);
261 mdelay(2000); 263
264 i = 2000;
265 while (--i)
266 udelay(1000);
267
262 reason &= ~8; 268 reason &= ~8;
263 outb(reason, 0x61); 269 outb(reason, 0x61);
264} 270}