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();
_______________________________________________
svn-src-head@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to