WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [PATCH] IRQ: Fix trace bug introduced by c/s 23816:7f357e1ef

To: xen-devel@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-devel] [PATCH] IRQ: Fix trace bug introduced by c/s 23816:7f357e1ef60a
From: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Date: Mon, 26 Sep 2011 17:33:12 +0100
Cc: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>
Delivery-date: Mon, 26 Sep 2011 09:33:54 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
User-agent: Mercurial-patchbomb/1.4.3
c/s 23816:7f357e1ef60a introduces cfg->old_vector and removes a loop
as a result.

Outside the loop, 'vector' is set to cfg->vector, but the loop aliased
'vector' to mean cfg->old_vector at the point at which this TRACE_3D
is executed.

Therefore, when the loop was removed, the code still compiled, although
the trace would record incorrect information.

Signed-off-by: Andrew Cooper <andrew.cooper3@xxxxxxxxxx>

diff -r a422e2a4451e -r 88b8953f5f5a xen/arch/x86/irq.c
--- a/xen/arch/x86/irq.c        Sun Sep 18 00:26:52 2011 +0100
+++ b/xen/arch/x86/irq.c        Mon Sep 26 17:31:32 2011 +0100
@@ -235,7 +235,7 @@ static void __clear_irq_vector(int irq)
     cpus_and(tmp_mask, cfg->old_cpu_mask, cpu_online_map);
     for_each_cpu_mask(cpu, tmp_mask) {
         ASSERT( per_cpu(vector_irq, cpu)[cfg->old_vector] == irq );
-        TRACE_3D(TRC_HW_IRQ_MOVE_FINISH, irq, vector, cpu);
+        TRACE_3D(TRC_HW_IRQ_MOVE_FINISH, irq, cfg->old_vector, cpu);
         per_cpu(vector_irq, cpu)[cfg->old_vector] = -1;
      }
 

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

<Prev in Thread] Current Thread [Next in Thread>