svn commit: r263253 - head/sys/ia64/ia64
Marcel Moolenaar
marcel at FreeBSD.org
Sun Mar 16 21:57:06 UTC 2014
Author: marcel
Date: Sun Mar 16 21:57:05 2014
New Revision: 263253
URL: http://svnweb.freebsd.org/changeset/base/263253
Log:
Don't use the ITC as the faulting address for external interrupts.
We only use it for tracing and the KTR infrastructure will use ITC
for the time-stamp.
Modified:
head/sys/ia64/ia64/exception.S
head/sys/ia64/ia64/interrupt.c
Modified: head/sys/ia64/ia64/exception.S
==============================================================================
--- head/sys/ia64/ia64/exception.S Sun Mar 16 21:05:00 2014 (r263252)
+++ head/sys/ia64/ia64/exception.S Sun Mar 16 21:57:05 2014 (r263253)
@@ -1388,7 +1388,7 @@ IVT_END(Break_Instruction)
IVT_ENTRY(External_Interrupt, 0x3000)
{ .mib
- mov r17=ar.itc // Put the ITC in the trapframe.
+ mov r17=0
mov r16=ip
br.sptk exception_save
;;
Modified: head/sys/ia64/ia64/interrupt.c
==============================================================================
--- head/sys/ia64/ia64/interrupt.c Sun Mar 16 21:05:00 2014 (r263252)
+++ head/sys/ia64/ia64/interrupt.c Sun Mar 16 21:57:05 2014 (r263253)
@@ -316,8 +316,8 @@ ia64_handle_intr(struct trapframe *tf)
critical_enter();
do {
- CTR2(KTR_INTR, "INTR: ITC=%u, XIV=%u",
- (u_int)tf->tf_special.ifa, xiv);
+ CTR3(KTR_INTR, "INTR: XIV=%u, #%u: frame=%p", xiv,
+ PCPU_GET(cnt.v_intr), tf);
if (!(ia64_handler[xiv])(td, xiv, tf)) {
ia64_set_eoi(0);
ia64_srlz_d();
More information about the svn-src-all
mailing list