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

Re: [Xen-devel] Re: [PATCH] Modpost section mismatch fix



> Tested it. Works now.

Ok, Stuck Tested-by on the patch. Hopefully Linus hasn't pulled it yet.

> Reviewed-by: Raghavendra Prabhu <rprabhu@xxxxxxxxxxx>
> 
> Also,
> The condition for acpi_gsi_to_irq can be removed since it always returns zero.

The function might in the future return something that is non-zero
and we should guard for it. Also you make 'irq' be unsigned which is not
good as the IRQ 0 is a valid value - and with making it unsigned if it is
set to -1 (the -1 is the invalid IRQ value) the check for 'irq != gsi'
will be true and and we will pass in -1 casted to unsigned. That is a
large value and not the right thing we want to pass to xen_register_gsi.


> ============================================
>  diff --git a/arch/x86/pci/xen.c b/arch/x86/pci/xen.c
>  index f567965..3faa55b 100644
>  --- a/arch/x86/pci/xen.c
>  +++ b/arch/x86/pci/xen.c
>  @@ -405,7 +405,7 @@ static __init void xen_setup_acpi_sci(void)
>          int rc;
>          int trigger, polarity;
>          int gsi = acpi_sci_override_gsi;
>  -       int irq = -1;
>  +       unsigned int irq = 0u;
>          int gsi_override = -1;
> 
>          if (!gsi)
>  @@ -435,11 +435,10 @@ static __init void xen_setup_acpi_sci(void)
>           * setup as we had setup IRQ 20 for it).
>           */
>          /* Check whether the GSI != IRQ */
>  -       if (acpi_gsi_to_irq(gsi, &irq) == 0) {
>  -               if (irq >= 0 && irq != gsi)
>  -                       /* Bugger, we MUST have that IRQ. */
>  -                       gsi_override = irq;
>  -       }
>  +       acpi_gsi_to_irq(gsi, &irq);
>  +       if (irq != gsi)
>  +               /* Bugger, we MUST have that IRQ. */
>  +               gsi_override = irq;
> 
>          gsi = xen_register_gsi(gsi, gsi_override, trigger, polarity);
>          printk(KERN_INFO "xen: acpi sci %d\n", gsi);
> 
> 
> --------------------------
> Raghavendra Prabhu
> GPG Id : 0xD72BE977
> Fingerprint: B93F EBCB 8E05 7039 CD3C A4B8 A616 DCA1 D72B E977
> www: wnohang.net



> _______________________________________________
> 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®.