All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sinan Kaya <okaya@codeaurora.org>
To: linux-acpi@vger.kernel.org, rjw@rjwysocki.net,
	bhelgaas@google.com, ravikanth.nalla@hpe.com,
	linux@rainbow-software.org, timur@codeaurora.org,
	cov@codeaurora.org, jcm@redhat.com, alex.williamson@redhat.com
Cc: linux-pci@vger.kernel.org, agross@codeaurora.org,
	linux-arm-msm@vger.kernel.org,
	linux-arm-kernel@lists.infradead.org, wim@djo.tudelft.nl,
	Sinan Kaya <okaya@codeaurora.org>
Subject: [PATCH V4 0/3] ACPI,PCI,IRQ: revert penalty calculation for ISA and SCI interrupts
Date: Wed, 19 Oct 2016 18:21:01 -0400	[thread overview]
Message-ID: <1476915664-27231-1-git-send-email-okaya@codeaurora.org> (raw)

By the time ACPI gets initialized, this code tries to determine an
IRQ number based on penalty values in this array. It will try to locate
the IRQ with the least penalty assignment so that interrupt sharing is
avoided if possible.

A couple of notes about the external APIs:
1. These API can be called before the ACPI is started. Therefore, one
cannot assume that the PCI link objects are initialized for calculating
penalties.
2. The polarity and trigger information passed via the
acpi_penalize_sci_irq from the BIOS may not match what the IRQ subsystem
is reporting as the call might have been placed before the IRQ is
registered by the interrupt subsystem.

The reverted changes were in the direction to remove these external API and
try to calculate the penalties at runtime for the ISA, SCI as well as PCI
IRQS.
This didn't work out well with the existing platforms.

V4:
* Drop ACPI, PCI IRQ: add PCI_USING penalty for ISA interrupts
* A new patch to isolate early boot ISA penalty calculations from dynamic
penalty calculation by directly modifying the array members in
("ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages")
* Now that we isolated both SCI and ISA interrupts, revert commit ("Revert
"ACPI,PCI,IRQ: separate ISA penalty calculation"") and commit
("487cf917ed0d
(Revert "ACPI, PCI, IRQ: remove redundant code in acpi_irq_penalty_init()")
to share code between ISA and PCI penalties as originally intended.

V3:
http://www.spinics.net/lists/arm-kernel/msg536208.html
* drop patch #1 as discussed with Bjorn
* add patch #3 to track SCI irq and penalty separately

V2: https://lkml.org/lkml/2016/10/1/106
* Commit message updates

V1:
http://lists-archives.com/linux-kernel/28673954-revert-acpi-pci-irq-reduce-static-irq-array-size-to-16.html
* initial implementation

Sinan Kaya (3):
  ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages
  Revert "ACPI,PCI,IRQ: remove SCI penalize function"
  Revert "ACPI,PCI,IRQ: separate ISA penalty calculation"

 arch/x86/kernel/acpi/boot.c |  1 +
 arch/x86/pci/acpi.c         |  1 -
 drivers/acpi/pci_link.c     | 72 ++++++++++++---------------------------------
 include/acpi/acpi_drivers.h |  1 -
 include/linux/acpi.h        |  1 +
 5 files changed, 21 insertions(+), 55 deletions(-)

-- 
1.9.1


WARNING: multiple messages have this Message-ID (diff)
From: Sinan Kaya <okaya@codeaurora.org>
To: linux-acpi@vger.kernel.org, rjw@rjwysocki.net,
	bhelgaas@google.com, ravikanth.nalla@hpe.com,
	linux@rainbow-software.org, timur@codeaurora.org,
	cov@codeaurora.org, jcm@redhat.com, alex.williamson@redhat.com
Cc: linux-pci@vger.kernel.org, agross@codeaurora.org,
	Sinan Kaya <okaya@codeaurora.org>,
	linux-arm-msm@vger.kernel.org, wim@djo.tudelft.nl,
	linux-arm-kernel@lists.infradead.org
Subject: [PATCH V4 0/3] ACPI, PCI, IRQ: revert penalty calculation for ISA and SCI interrupts
Date: Wed, 19 Oct 2016 18:21:01 -0400	[thread overview]
Message-ID: <1476915664-27231-1-git-send-email-okaya@codeaurora.org> (raw)

By the time ACPI gets initialized, this code tries to determine an
IRQ number based on penalty values in this array. It will try to locate
the IRQ with the least penalty assignment so that interrupt sharing is
avoided if possible.

A couple of notes about the external APIs:
1. These API can be called before the ACPI is started. Therefore, one
cannot assume that the PCI link objects are initialized for calculating
penalties.
2. The polarity and trigger information passed via the
acpi_penalize_sci_irq from the BIOS may not match what the IRQ subsystem
is reporting as the call might have been placed before the IRQ is
registered by the interrupt subsystem.

The reverted changes were in the direction to remove these external API and
try to calculate the penalties at runtime for the ISA, SCI as well as PCI
IRQS.
This didn't work out well with the existing platforms.

V4:
* Drop ACPI, PCI IRQ: add PCI_USING penalty for ISA interrupts
* A new patch to isolate early boot ISA penalty calculations from dynamic
penalty calculation by directly modifying the array members in
("ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages")
* Now that we isolated both SCI and ISA interrupts, revert commit ("Revert
"ACPI,PCI,IRQ: separate ISA penalty calculation"") and commit
("487cf917ed0d
(Revert "ACPI, PCI, IRQ: remove redundant code in acpi_irq_penalty_init()")
to share code between ISA and PCI penalties as originally intended.

V3:
http://www.spinics.net/lists/arm-kernel/msg536208.html
* drop patch #1 as discussed with Bjorn
* add patch #3 to track SCI irq and penalty separately

V2: https://lkml.org/lkml/2016/10/1/106
* Commit message updates

V1:
http://lists-archives.com/linux-kernel/28673954-revert-acpi-pci-irq-reduce-static-irq-array-size-to-16.html
* initial implementation

Sinan Kaya (3):
  ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages
  Revert "ACPI,PCI,IRQ: remove SCI penalize function"
  Revert "ACPI,PCI,IRQ: separate ISA penalty calculation"

 arch/x86/kernel/acpi/boot.c |  1 +
 arch/x86/pci/acpi.c         |  1 -
 drivers/acpi/pci_link.c     | 72 ++++++++++++---------------------------------
 include/acpi/acpi_drivers.h |  1 -
 include/linux/acpi.h        |  1 +
 5 files changed, 21 insertions(+), 55 deletions(-)

-- 
1.9.1


_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel

WARNING: multiple messages have this Message-ID (diff)
From: okaya@codeaurora.org (Sinan Kaya)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH V4 0/3] ACPI, PCI, IRQ: revert penalty calculation for ISA and SCI interrupts
Date: Wed, 19 Oct 2016 18:21:01 -0400	[thread overview]
Message-ID: <1476915664-27231-1-git-send-email-okaya@codeaurora.org> (raw)

By the time ACPI gets initialized, this code tries to determine an
IRQ number based on penalty values in this array. It will try to locate
the IRQ with the least penalty assignment so that interrupt sharing is
avoided if possible.

A couple of notes about the external APIs:
1. These API can be called before the ACPI is started. Therefore, one
cannot assume that the PCI link objects are initialized for calculating
penalties.
2. The polarity and trigger information passed via the
acpi_penalize_sci_irq from the BIOS may not match what the IRQ subsystem
is reporting as the call might have been placed before the IRQ is
registered by the interrupt subsystem.

The reverted changes were in the direction to remove these external API and
try to calculate the penalties at runtime for the ISA, SCI as well as PCI
IRQS.
This didn't work out well with the existing platforms.

V4:
* Drop ACPI, PCI IRQ: add PCI_USING penalty for ISA interrupts
* A new patch to isolate early boot ISA penalty calculations from dynamic
penalty calculation by directly modifying the array members in
("ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages")
* Now that we isolated both SCI and ISA interrupts, revert commit ("Revert
"ACPI,PCI,IRQ: separate ISA penalty calculation"") and commit
("487cf917ed0d
(Revert "ACPI, PCI, IRQ: remove redundant code in acpi_irq_penalty_init()")
to share code between ISA and PCI penalties as originally intended.

V3:
http://www.spinics.net/lists/arm-kernel/msg536208.html
* drop patch #1 as discussed with Bjorn
* add patch #3 to track SCI irq and penalty separately

V2: https://lkml.org/lkml/2016/10/1/106
* Commit message updates

V1:
http://lists-archives.com/linux-kernel/28673954-revert-acpi-pci-irq-reduce-static-irq-array-size-to-16.html
* initial implementation

Sinan Kaya (3):
  ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages
  Revert "ACPI,PCI,IRQ: remove SCI penalize function"
  Revert "ACPI,PCI,IRQ: separate ISA penalty calculation"

 arch/x86/kernel/acpi/boot.c |  1 +
 arch/x86/pci/acpi.c         |  1 -
 drivers/acpi/pci_link.c     | 72 ++++++++++++---------------------------------
 include/acpi/acpi_drivers.h |  1 -
 include/linux/acpi.h        |  1 +
 5 files changed, 21 insertions(+), 55 deletions(-)

-- 
1.9.1

             reply	other threads:[~2016-10-19 22:21 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-10-19 22:21 Sinan Kaya [this message]
2016-10-19 22:21 ` [PATCH V4 0/3] ACPI, PCI, IRQ: revert penalty calculation for ISA and SCI interrupts Sinan Kaya
2016-10-19 22:21 ` Sinan Kaya
2016-10-19 22:21 ` [PATCH V4 1/3] ACPI, PCI, IRQ: assign ISA IRQ directly during early boot stages Sinan Kaya
2016-10-19 22:21   ` Sinan Kaya
2016-10-19 22:21   ` Sinan Kaya
2016-10-20 21:39   ` Rafael J. Wysocki
2016-10-20 21:39     ` Rafael J. Wysocki
2016-10-20 21:39     ` Rafael J. Wysocki
2016-10-24  3:48     ` Sinan Kaya
2016-10-24  3:48       ` Sinan Kaya
2016-10-24  3:48       ` Sinan Kaya
2016-10-21  1:39   ` Bjorn Helgaas
2016-10-21  1:39     ` Bjorn Helgaas
2016-10-21 14:07     ` Bjorn Helgaas
2016-10-21 14:07       ` Bjorn Helgaas
2016-10-24  3:22     ` Sinan Kaya
2016-10-24  3:22       ` Sinan Kaya
2016-10-23  3:48   ` [V4, " Jonathan Liu
2016-10-23  3:48     ` Jonathan Liu
2016-10-24  4:17     ` Sinan Kaya
2016-10-24  4:17       ` Sinan Kaya
2016-10-24  4:21       ` Jonathan Liu
2016-10-24  4:21         ` Jonathan Liu
2016-10-19 22:21 ` [PATCH V4 2/3] Revert "ACPI,PCI,IRQ: remove SCI penalize function" Sinan Kaya
2016-10-19 22:21   ` Sinan Kaya
2016-10-19 22:21   ` Sinan Kaya
2016-10-21  1:58   ` Bjorn Helgaas
2016-10-21  1:58     ` Bjorn Helgaas
2016-10-21 14:45     ` Bjorn Helgaas
2016-10-21 14:45       ` Bjorn Helgaas
2016-10-21 16:13       ` Sinan Kaya
2016-10-21 16:13         ` Sinan Kaya
2016-10-22 14:57         ` Bjorn Helgaas
2016-10-22 14:57           ` Bjorn Helgaas
2016-10-24  3:48         ` Sinan Kaya
2016-10-24  3:48           ` Sinan Kaya
2016-10-22 23:28     ` Bjorn Helgaas
2016-10-22 23:28       ` Bjorn Helgaas
2016-10-24  3:48     ` Sinan Kaya
2016-10-24  3:48       ` Sinan Kaya
2016-10-23  3:49   ` [V4,2/3] " Jonathan Liu
2016-10-23  3:49     ` Jonathan Liu
2016-10-19 22:21 ` [PATCH V4 3/3] Revert "ACPI,PCI,IRQ: separate ISA penalty calculation" Sinan Kaya
2016-10-19 22:21   ` [PATCH V4 3/3] Revert "ACPI, PCI, IRQ: " Sinan Kaya
2016-10-19 22:21   ` Sinan Kaya
2016-10-21  2:31   ` Bjorn Helgaas
2016-10-21  2:31     ` Bjorn Helgaas
2016-10-21  2:58     ` Sinan Kaya
2016-10-21  2:58       ` Sinan Kaya
2016-10-22 23:59       ` Bjorn Helgaas
2016-10-22 23:59         ` Bjorn Helgaas
2016-10-24  4:16         ` Sinan Kaya
2016-10-24  4:16           ` Sinan Kaya
2016-10-23  3:49   ` [V4,3/3] Revert "ACPI,PCI,IRQ: " Jonathan Liu
2016-10-23  3:49     ` Jonathan Liu

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1476915664-27231-1-git-send-email-okaya@codeaurora.org \
    --to=okaya@codeaurora.org \
    --cc=agross@codeaurora.org \
    --cc=alex.williamson@redhat.com \
    --cc=bhelgaas@google.com \
    --cc=cov@codeaurora.org \
    --cc=jcm@redhat.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=linux@rainbow-software.org \
    --cc=ravikanth.nalla@hpe.com \
    --cc=rjw@rjwysocki.net \
    --cc=timur@codeaurora.org \
    --cc=wim@djo.tudelft.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.