Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 131469
b: refs/heads/master
c: be71661
h: refs/heads/master
i:
  131467: 5fe38d7
v: v3
  • Loading branch information
Thomas Gleixner authored and Ingo Molnar committed Feb 15, 2009
1 parent 22608e2 commit f18b8e7
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: e49590b6dd356f8ef10ba3531a29e5086f6f2e3a
refs/heads/master: be716615fe596ee117292dc615e95f707fb67fd1
10 changes: 9 additions & 1 deletion trunk/arch/x86/kernel/traps.c
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,12 @@ static inline void preempt_conditional_sti(struct pt_regs *regs)
local_irq_enable();
}

static inline void conditional_cli(struct pt_regs *regs)
{
if (regs->flags & X86_EFLAGS_IF)
local_irq_disable();
}

static inline void preempt_conditional_cli(struct pt_regs *regs)
{
if (regs->flags & X86_EFLAGS_IF)
Expand Down Expand Up @@ -626,8 +632,10 @@ dotraplinkage void __kprobes do_debug(struct pt_regs *regs, long error_code)

#ifdef CONFIG_X86_32
debug_vm86:
/* reenable preemption: handle_vm86_trap() might sleep */
dec_preempt_count();
handle_vm86_trap((struct kernel_vm86_regs *) regs, error_code, 1);
preempt_conditional_cli(regs);
conditional_cli(regs);
return;
#endif

Expand Down

0 comments on commit f18b8e7

Please sign in to comment.