public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Ethan Zhao <haifeng.zhao@linux.intel.com>
To: "Christian A. Ehrhardt" <lk@c--e.de>,
	Baolu Lu <baolu.lu@linux.intel.com>
Cc: "Paul Menzel" <pmenzel@molgen.mpg.de>,
	"Jörg Rödel" <joro@8bytes.org>, "Will Deacon" <will@kernel.org>,
	iommu@lists.linux.dev, linux-kernel@vger.kernel.org
Subject: Re: Dell XPS 13 9360: DMAR errors `DRHD: handling fault status reg 2` and `[INTR-REMAP] Request device [f0:1f.0] fault index 0x0`
Date: Thu, 25 Jan 2024 17:37:58 +0800	[thread overview]
Message-ID: <a6e18e0a-2721-4126-aa8a-ae650fa86edb@linux.intel.com> (raw)
In-Reply-To: <Za5xYauQDe8xcVGr@cae.in-ulm.de>


On 1/22/2024 9:45 PM, Christian A. Ehrhardt wrote:
> Hi,
>
> On Mon, Jan 22, 2024 at 08:53:43PM +0800, Baolu Lu wrote:
>> On 2024/1/19 20:59, Paul Menzel wrote:
>>> Dear Linux folks,
>>>
>>>
>>> On a Dell XPS 13 9360 Linux 6.6.8, 6.6.11 and 6.7 (and earlier versions)
>>> log the lines below when resuming from ACPI S3 (deep):
>>>
>>>       [    0.000000] Linux version 6.7-amd64
>>> (debian-kernel@lists.debian.org) (x86_64-linux-gnu-gcc-13 (Debian
>>> 13.2.0-9) 13.2.0, GNU ld (GNU Binutils for Debian) 2.41.50.20231227) #1
>>> SMP PREEMPT_DYNAMIC Debian 6.7-1~exp1 (2024-01-08)
>>>       [    0.000000] Command line: BOOT_IMAGE=/vmlinuz-6.7-amd64
>>> root=UUID=32e29882-d94d-4a92-9ee4-4d03002bfa29 ro quiet pci=noaer
>>> mem_sleep_default=deep log_buf_len=8M
>>>       […]
>>>       [    0.000000] DMI: Dell Inc. XPS 13 9360/0596KF, BIOS 2.21.0
>>> 06/02/2022
>>>       […]
>>>       [   99.711230] PM: suspend entry (deep)
>>>       […]
>>>       [   99.722101] printk: Suspending console(s) (use
>>> no_console_suspend to debug)
>>>       [  100.285178] ACPI: EC: interrupt blocked
>>>       [  100.319908] ACPI: PM: Preparing to enter system sleep state S3
>>>       [  100.331793] ACPI: EC: event blocked
>>>       [  100.331798] ACPI: EC: EC stopped
>>>       [  100.331800] ACPI: PM: Saving platform NVS memory
>>>       [  100.335224] Disabling non-boot CPUs ...
>>>       [  100.337412] smpboot: CPU 1 is now offline
>>>       [  100.341065] smpboot: CPU 2 is now offline
>>>       [  100.346441] smpboot: CPU 3 is now offline
>>>       [  100.353086] ACPI: PM: Low-level resume complete
>>>       [  100.353129] ACPI: EC: EC started
>>>       [  100.353129] ACPI: PM: Restoring platform NVS memory
>>>       [  100.355219] Enabling non-boot CPUs ...
>>>       [  100.355244] smpboot: Booting Node 0 Processor 1 APIC 0x2
>>>       [  100.355954] CPU1 is up
>>>       [  100.355972] smpboot: Booting Node 0 Processor 2 APIC 0x1
>>>       [  100.356698] CPU2 is up
>>>       [  100.356716] smpboot: Booting Node 0 Processor 3 APIC 0x3
>>>       [  100.357371] CPU3 is up
>>>       [  100.360217] ACPI: PM: Waking up from system sleep state S3
>>>       [  100.668380] ACPI: EC: interrupt unblocked
>>>       [  100.668598] pcieport 0000:00:1c.0: Intel SPT PCH root port ACS
>>> workaround enabled
>>>       [  100.668606] pcieport 0000:00:1c.4: Intel SPT PCH root port ACS
>>> workaround enabled
>>>       [  100.668643] pcieport 0000:00:1d.0: Intel SPT PCH root port ACS
>>> workaround enabled
>>>       [  100.690996] DMAR: DRHD: handling fault status reg 2
>>>       [  100.691001] DMAR: [INTR-REMAP] Request device [f0:1f.0] fault
>>> index 0x0 [fault reason 0x25] Blocked a compatibility format interrupt
>>> request
>>>
>>> But I am unable to find the device f0:1f.0:
>>>
>>>       $ lspci -nn
>>>       00:00.0 Host bridge [0600]: Intel Corporation Xeon E3-1200 v6/7th
>>> Gen Core Processor Host Bridge/DRAM Registers [8086:5904] (rev 02)
>>>       00:02.0 VGA compatible controller [0300]: Intel Corporation HD
>>> Graphics 620 [8086:5916] (rev 02)
>>>       00:04.0 Signal processing controller [1180]: Intel Corporation Xeon
>>> E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem
>>> [8086:1903] (rev 02)
>>>       00:14.0 USB controller [0c03]: Intel Corporation Sunrise Point-LP
>>> USB 3.0 xHCI Controller [8086:9d2f] (rev 21)
>>>       00:14.2 Signal processing controller [1180]: Intel Corporation
>>> Sunrise Point-LP Thermal subsystem [8086:9d31] (rev 21)
>>>       00:15.0 Signal processing controller [1180]: Intel Corporation
>>> Sunrise Point-LP Serial IO I2C Controller #0 [8086:9d60] (rev 21)
>>>       00:15.1 Signal processing controller [1180]: Intel Corporation
>>> Sunrise Point-LP Serial IO I2C Controller #1 [8086:9d61] (rev 21)
>>>       00:16.0 Communication controller [0780]: Intel Corporation Sunrise
>>> Point-LP CSME HECI #1 [8086:9d3a] (rev 21)
>>>       00:1c.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI
>>> Express Root Port #1 [8086:9d10] (rev f1)
>>>       00:1c.4 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI
>>> Express Root Port #5 [8086:9d14] (rev f1)
>>>       00:1d.0 PCI bridge [0604]: Intel Corporation Sunrise Point-LP PCI
>>> Express Root Port #9 [8086:9d18] (rev f1)
>>>       00:1f.0 ISA bridge [0601]: Intel Corporation Sunrise Point-LP LPC
>>> Controller [8086:9d58] (rev 21)
>>>       00:1f.2 Memory controller [0580]: Intel Corporation Sunrise
>>> Point-LP PMC [8086:9d21] (rev 21)
>>>       00:1f.3 Audio device [0403]: Intel Corporation Sunrise Point-LP HD
>>> Audio [8086:9d71] (rev 21)
>>>       00:1f.4 SMBus [0c05]: Intel Corporation Sunrise Point-LP SMBus
>>> [8086:9d23] (rev 21)
>>>       01:00.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3
>>> Bridge [Alpine Ridge 2C 2015] [8086:1576]
>>>       02:00.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3
>>> Bridge [Alpine Ridge 2C 2015] [8086:1576]
>>>       02:01.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3
>>> Bridge [Alpine Ridge 2C 2015] [8086:1576]
>>>       02:02.0 PCI bridge [0604]: Intel Corporation DSL6340 Thunderbolt 3
>>> Bridge [Alpine Ridge 2C 2015] [8086:1576]
>>>       39:00.0 USB controller [0c03]: Intel Corporation DSL6340 USB 3.1
>>> Controller [Alpine Ridge] [8086:15b5]
>>>       3a:00.0 Network controller [0280]: Qualcomm Atheros QCA6174
>>> 802.11ac Wireless Network Adapter [168c:003e] (rev 32)
>>>       3b:00.0 Non-Volatile memory controller [0108]: SK hynix PC300 NVMe
>>> Solid State Drive 512GB [1c5c:1284]
>>>
>>> As this is logged as an error, can this be fixed somehow?
>> This appears to be a platform problem. The hidden device (f0:1f.0) is
>> not visible to the OS, so no driver can program the interrupt remapping
>> table for the device's interrupts.
> The hidden device has been identified as the IO-APIC. It is visible
> and properly declared to use 0f:1f.0 in the DMAR table.

Didn't see the warning

          "Compatibility-format IRQs enabled despite intr remapping;\n"

          "you are vulnerable to IRQ injection.\n");

So assume the DMA_GSTS_CFIS bit of GSTS_REG shows the interrupt

remapping was programmed to the right behaviour -- Compatibility

format interrupts are blocked.

But the device f0:1f.0 is still armed to inject compatible format interrupt

that is dangerous mistake if not be blocked, so far no such exception

that should be passed through, appears not iommu issue per my

understanding.

Thanks,

Ethan


>
>       regards  Christian
>
>

      reply	other threads:[~2024-01-25  9:38 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-19 12:59 Dell XPS 13 9360: DMAR errors `DRHD: handling fault status reg 2` and `[INTR-REMAP] Request device [f0:1f.0] fault index 0x0` Paul Menzel
2024-01-19 15:11 ` Jörg Rödel
2024-01-19 17:57 ` Christian A. Ehrhardt
2024-01-22 12:16   ` Paul Menzel
2024-01-22 13:22     ` Christian A. Ehrhardt
2024-01-22 12:53 ` Baolu Lu
2024-01-22 13:45   ` Christian A. Ehrhardt
2024-01-25  9:37     ` Ethan Zhao [this message]

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=a6e18e0a-2721-4126-aa8a-ae650fa86edb@linux.intel.com \
    --to=haifeng.zhao@linux.intel.com \
    --cc=baolu.lu@linux.intel.com \
    --cc=iommu@lists.linux.dev \
    --cc=joro@8bytes.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lk@c--e.de \
    --cc=pmenzel@molgen.mpg.de \
    --cc=will@kernel.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox