Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 182407
b: refs/heads/master
c: e0e53db
h: refs/heads/master
i:
  182405: 2212433
  182403: 9bbf8da
  182399: c01428d
v: v3
  • Loading branch information
K.Prasad authored and Frederic Weisbecker committed Jan 29, 2010
1 parent 731add8 commit 94e07a1
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 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: 40f9249a73f6c251adea492b1c3d19d39e2a9bda
refs/heads/master: e0e53db6133c32964fd17f20b17073a402f07ed3
10 changes: 7 additions & 3 deletions trunk/arch/x86/kernel/hw_breakpoint.c
Original file line number Diff line number Diff line change
Expand Up @@ -502,8 +502,6 @@ static int __kprobes hw_breakpoint_handler(struct die_args *args)
rcu_read_lock();

bp = per_cpu(bp_per_reg[i], cpu);
if (bp)
rc = NOTIFY_DONE;
/*
* Reset the 'i'th TRAP bit in dr6 to denote completion of
* exception handling
Expand All @@ -522,7 +520,13 @@ static int __kprobes hw_breakpoint_handler(struct die_args *args)

rcu_read_unlock();
}
if (dr6 & (~DR_TRAP_BITS))
/*
* Further processing in do_debug() is needed for a) user-space
* breakpoints (to generate signals) and b) when the system has
* taken exception due to multiple causes
*/
if ((current->thread.debugreg6 & DR_TRAP_BITS) ||
(dr6 & (~DR_TRAP_BITS)))
rc = NOTIFY_DONE;

set_debugreg(dr7, 7);
Expand Down

0 comments on commit 94e07a1

Please sign in to comment.