[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

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



Sorry, NACK-ing this for now, since it hasn't been applied, and I'm
about to post a patch that subsumes it.

 -George

On Tue, Sep 27, 2011 at 12:54 PM, George Dunlap
<George.Dunlap@xxxxxxxxxxxxx> wrote:
> Acked-by: George Dunlap <george.dunlap@xxxxxxxxxxxxx>
>
> On Mon, Sep 26, 2011 at 5:33 PM, Andrew Cooper
> <andrew.cooper3@xxxxxxxxxx> wrote:
>> 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
>>
>

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


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.