Skip to content

Fully revert ACPI SCI Handler to Bookworm Behavior - #618

Open
croos12 wants to merge 1 commit into
sonic-net:masterfrom
croos12:croos-acpi-sci-followup-reverts-public
Open

Fully revert ACPI SCI Handler to Bookworm Behavior#618
croos12 wants to merge 1 commit into
sonic-net:masterfrom
croos12:croos-acpi-sci-followup-reverts-public

Conversation

@croos12

@croos12 croos12 commented Aug 27, 2026

Copy link
Copy Markdown
Contributor

Why I did it

Reverting 7a36b901a6eb ("ACPI: OSL: Use a threaded interrupt handler for SCI") puts the ACPI SCI
back on a non-threaded handler requested with plain IRQF_SHARED. Three later upstream commits had
adjusted the surrounding code to suit the threaded, IRQF_ONESHOT SCI:

  • 8e57de4307 dropped the interrupt disable from the ACPICA spin lock primitives.
  • 655a6e7c0d threaded the EC dedicated IRQ handler.
  • 8f812373d1 added IRQF_ONESHOT to the INT0002 request.

Restore all three to their pre-7a36b901a6eb behavior, so the ACPI locking, the EC dedicated IRQ,
and the INT0002 flags match the SCI handler we restored.

Work item tracking
  • Microsoft ADO (number only): N/A

How I did it

How to verify it

  1. Reboot repeatedly from ONIE Install, SONiC Reboot, and Power Cycling to confirm hang does not occur on kernel start

Which release branch to backport (provide reason below if selected)

Tested branch (Please provide the tested image version)

  • master

Description for the changelog

Fully revert ACPI SCI Handler to Bookworm Behavior

revert-acpi-osl-use-threaded-irq-for-sci.patch puts the ACPI SCI back on
a non-threaded handler requested with plain IRQF_SHARED.  Three later
upstream commits had adjusted the surrounding code to suit the threaded,
IRQF_ONESHOT SCI:

  8e57de4307 ACPI: OSL: Use spin locks without disabling interrupts
  655a6e7c0d ACPI: EC: Use a threaded handler for dedicated IRQ
  8f812373d1 platform/x86: intel: int0002_vgpio: Pass IRQF_ONESHOT to
             request_irq()

platform-x86-int0002-remove-irqf-oneshot.patch already restored the
INT0002 side.  Revert the other two so the ACPI lock primitives and the
EC dedicated IRQ also match the SCI handler the series restores.

Keep both ordered after revert-acpi-osl-use-threaded-irq-for-sci.patch,
and record in the series file that the four are a dependent set: applying
the SCI revert without them, or reordering them, leaves the interrupt
configuration inconsistent.

Signed-off-by: Connor Roos <croos@nvidia.com>
@croos12
croos12 requested a review from a team as a code owner August 27, 2026 22:05
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
There may be pipelines that require an authorized user to comment /azp run to run.

@mssonicbld

Copy link
Copy Markdown

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 1 pipeline(s).

@paulmenzel

Copy link
Copy Markdown
Contributor

What’s the status of fixing this upstream?

@@ -0,0 +1,45 @@
From: Connor Roos <croos@nvidia.com>
Date: 2026-08-05
Subject: Revert "ACPI: EC: Use a threaded handler for dedicated IRQ"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use git format-patch formatted patches.

@croos12

croos12 commented Aug 28, 2026

Copy link
Copy Markdown
Contributor Author

What’s the status of fixing this upstream?

@paulmenzel let me look at the process for including this upstream first. I basically need to incorporate three commits there because of #580.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bug: ONIE install intermittently leaves DUT unbootable on master (kernel 6.12/Trixie) — boot hangs early

4 participants