diff mbox series

[v2] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable

Message ID 20200413130949.302829-1-hdegoede@redhat.com
State New
Headers show
Series [v2] ACPI/PCI: pci_link: use extended_irq union member when setting ext-irq shareable | expand

Commit Message

Hans de Goede April 13, 2020, 1:09 p.m. UTC
The case ACPI_RESOURCE_TYPE_EXTENDED_IRQ inside acpi_pci_link_set()
is correctly using resource->res.data.extended_irq.foo for most settings,
but for the shareable setting it so far has accidentally been using
resource->res.data.irq.shareable instead of
resource->res.data.extended_irq.shareable.

Note that the old code happens to also work because the shareable field
offset is the same for both the acpi_resource_irq and
acpi_resource_extended_irq structs.

Acked-by: Bjorn Helgaas <bhelgaas@google.com>
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
---
Changes in v2:
- Fix some spelling errors in the commit message pointed out by Bjorn
- Add Bjorn's Acked-by
---
 drivers/acpi/pci_link.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

Comments

Rafael J. Wysocki April 18, 2020, 7:39 p.m. UTC | #1
On Monday, April 13, 2020 3:09:49 PM CEST Hans de Goede wrote:
> The case ACPI_RESOURCE_TYPE_EXTENDED_IRQ inside acpi_pci_link_set()
> is correctly using resource->res.data.extended_irq.foo for most settings,
> but for the shareable setting it so far has accidentally been using
> resource->res.data.irq.shareable instead of
> resource->res.data.extended_irq.shareable.
> 
> Note that the old code happens to also work because the shareable field
> offset is the same for both the acpi_resource_irq and
> acpi_resource_extended_irq structs.
> 
> Acked-by: Bjorn Helgaas <bhelgaas@google.com>
> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
> ---
> Changes in v2:
> - Fix some spelling errors in the commit message pointed out by Bjorn
> - Add Bjorn's Acked-by
> ---
>  drivers/acpi/pci_link.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
> index 00a6da2121be..ed3d2182cf2c 100644
> --- a/drivers/acpi/pci_link.c
> +++ b/drivers/acpi/pci_link.c
> @@ -322,10 +322,10 @@ static int acpi_pci_link_set(struct acpi_pci_link *link, int irq)
>  		resource->res.data.extended_irq.polarity =
>  		    link->irq.polarity;
>  		if (link->irq.triggering == ACPI_EDGE_SENSITIVE)
> -			resource->res.data.irq.shareable =
> +			resource->res.data.extended_irq.shareable =
>  			    ACPI_EXCLUSIVE;
>  		else
> -			resource->res.data.irq.shareable = ACPI_SHARED;
> +			resource->res.data.extended_irq.shareable = ACPI_SHARED;
>  		resource->res.data.extended_irq.interrupt_count = 1;
>  		resource->res.data.extended_irq.interrupts[0] = irq;
>  		/* ignore resource_source, it's optional */
> 

Applied as 5.7-rc material, thanks!
diff mbox series

Patch

diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c
index 00a6da2121be..ed3d2182cf2c 100644
--- a/drivers/acpi/pci_link.c
+++ b/drivers/acpi/pci_link.c
@@ -322,10 +322,10 @@  static int acpi_pci_link_set(struct acpi_pci_link *link, int irq)
 		resource->res.data.extended_irq.polarity =
 		    link->irq.polarity;
 		if (link->irq.triggering == ACPI_EDGE_SENSITIVE)
-			resource->res.data.irq.shareable =
+			resource->res.data.extended_irq.shareable =
 			    ACPI_EXCLUSIVE;
 		else
-			resource->res.data.irq.shareable = ACPI_SHARED;
+			resource->res.data.extended_irq.shareable = ACPI_SHARED;
 		resource->res.data.extended_irq.interrupt_count = 1;
 		resource->res.data.extended_irq.interrupts[0] = irq;
 		/* ignore resource_source, it's optional */