[IA64] Remove getting break_num by decoding instruction
authorKeshavamurthy Anil S <anil.s.keshavamurthy@intel.com>
Tue, 22 Nov 2005 22:15:49 +0000 (14:15 -0800)
committerTony Luck <tony.luck@intel.com>
Tue, 29 Nov 2005 17:24:39 +0000 (09:24 -0800)
commit5a94bcfd2a18edcf368b3128c7df07b58e529932
tree12e6240717e2dbdce0e157a097629b76d07afdae
parentb77dae5293efba42ea1ff04d410ee68e66d5b0cf
[IA64] Remove getting break_num by decoding instruction

break.b always sets cr.iim to 0 and the current code tries to
get the break_num by decoding instruction. However, their
seems to be a race condition while reading the regs->cr_iip,
as on other cpu the break.b at regs->cr_iip might have been
replaced with the original instruction as a result of
unregister_kprobe() and hence decoding instruction to
obtain break_num will result in wrong value in this case.

Also includes changes to kprobes.c which now has to handle
break number zero.

Signed-off-by: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
arch/ia64/kernel/kprobes.c
arch/ia64/kernel/traps.c