Re: [PATCH] x86/ACPI: Fix regression caused by 16ee7b3dcc56

From: Jim Bos
Date: Tue Apr 07 2015 - 12:49:22 EST


On 04/07/2015 04:34 PM, Jiang Liu wrote:
> Hi Jim,
> Could you please help to test this patch against v4.0-rc6?
> Thanks!
> Gerry
>
> Signed-off-by: Jiang Liu <jiang.liu@xxxxxxxxxxxxxxx>
> ---
> arch/x86/kernel/acpi/boot.c | 10 +++++++---
> 1 file changed, 7 insertions(+), 3 deletions(-)
>
> diff --git a/arch/x86/kernel/acpi/boot.c b/arch/x86/kernel/acpi/boot.c
> index 803b684676ff..f7f1fe7cd1b0 100644
> --- a/arch/x86/kernel/acpi/boot.c
> +++ b/arch/x86/kernel/acpi/boot.c
> @@ -403,10 +403,14 @@ static int mp_config_acpi_gsi(struct device *dev, u32 gsi, int trigger,
> static int mp_register_gsi(struct device *dev, u32 gsi, int trigger,
> int polarity)
> {
> - int irq, node;
> + int i, irq, node;
>
> - if (acpi_irq_model != ACPI_IRQ_MODEL_IOAPIC)
> - return gsi;
> + if (acpi_irq_model != ACPI_IRQ_MODEL_IOAPIC) {
> + for (i = 0; i < nr_legacy_irqs(); i++)
> + if (isa_irq_to_gsi[i] == gsi)
> + return i;
> + return -1;
> + }
>
> trigger = trigger == ACPI_EDGE_SENSITIVE ? 0 : 1;
> polarity = polarity == ACPI_ACTIVE_HIGH ? 0 : 1;
>

Jiang,

It definitely seems to be an improvement, using Virtualbox guest with
your patch applied acpi-events work for all combinations (smp/nosmp
with/without I/O APIC assigned to the guest).

However, on the Dell laptop it still doesn't work. To be sure I built a
3.16 kernel on this laptop and acpi_event power-button lid close/open
are working just fine.

Attached config + dmesg + cat /proc/interrupt for the working 3.16 case
and still not working 4.0-rc6+patch case.

Thanks,
Jim







Attachment: 3.16-OK.tgz
Description: application/compressed-tar

Attachment: 4.0rc6-NOT_OK.tgz
Description: application/compressed-tar