diff options
Diffstat (limited to 'arch/i386/kernel')
-rw-r--r-- | arch/i386/kernel/process.c | 7 | ||||
-rw-r--r-- | arch/i386/kernel/signal.c | 2 |
2 files changed, 1 insertions, 8 deletions
diff --git a/arch/i386/kernel/process.c b/arch/i386/kernel/process.c index 36145efc61b5..b2203e21acb3 100644 --- a/arch/i386/kernel/process.c +++ b/arch/i386/kernel/process.c | |||
@@ -558,13 +558,6 @@ handle_io_bitmap(struct thread_struct *next, struct tss_struct *tss) | |||
558 | */ | 558 | */ |
559 | tss->io_bitmap_base = INVALID_IO_BITMAP_OFFSET_LAZY; | 559 | tss->io_bitmap_base = INVALID_IO_BITMAP_OFFSET_LAZY; |
560 | } | 560 | } |
561 | /* | ||
562 | * This special macro can be used to load a debugging register | ||
563 | */ | ||
564 | #define loaddebug(thread,register) \ | ||
565 | __asm__("movl %0,%%db" #register \ | ||
566 | : /* no output */ \ | ||
567 | :"r" (thread->debugreg[register])) | ||
568 | 561 | ||
569 | /* | 562 | /* |
570 | * switch_to(x,yn) should switch tasks from x to y. | 563 | * switch_to(x,yn) should switch tasks from x to y. |
diff --git a/arch/i386/kernel/signal.c b/arch/i386/kernel/signal.c index ef3602e1c052..ea46d028af08 100644 --- a/arch/i386/kernel/signal.c +++ b/arch/i386/kernel/signal.c | |||
@@ -618,7 +618,7 @@ int fastcall do_signal(struct pt_regs *regs, sigset_t *oldset) | |||
618 | * inside the kernel. | 618 | * inside the kernel. |
619 | */ | 619 | */ |
620 | if (unlikely(current->thread.debugreg[7])) { | 620 | if (unlikely(current->thread.debugreg[7])) { |
621 | __asm__("movl %0,%%db7" : : "r" (current->thread.debugreg[7])); | 621 | loaddebug(¤t->thread, 7); |
622 | } | 622 | } |
623 | 623 | ||
624 | /* Whee! Actually deliver the signal. */ | 624 | /* Whee! Actually deliver the signal. */ |