lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ce37a94b-c15a-4c03-b8ed-76bbfa369d88@linux.intel.com>
Date: Wed, 16 Apr 2025 11:37:21 +0300
From: Jarkko Nikula <jarkko.nikula@...ux.intel.com>
To: Lu Baolu <baolu.lu@...ux.intel.com>, Joerg Roedel <joro@...tes.org>,
 Will Deacon <will@...nel.org>, Robin Murphy <robin.murphy@....com>,
 Kevin Tian <kevin.tian@...el.com>
Cc: iommu@...ts.linux.dev, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/1] iommu/vt-d: Revert ATS timing change to fix boot
 failure

On 4/16/25 10:36 AM, Lu Baolu wrote:
> Commit <5518f239aff1> ("iommu/vt-d: Move scalable mode ATS enablement to
> probe path") changed the PCI ATS enablement logic to run earlier,
> specifically before the default domain attachment.
> 
> On some client platforms, this change resulted in boot failures, causing
> the kernel to panic with the following message and call trace:
> 
>   Kernel panic - not syncing: DMAR hardware is malfunctioning
>   CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.14.0-rc3+ #175
>   Call Trace:
>    <TASK>
>    dump_stack_lvl+0x6f/0xb0
>    dump_stack+0x10/0x16
>    panic+0x10a/0x2b7
>    iommu_enable_translation.cold+0xc/0xc
>    intel_iommu_init+0xe39/0xec0
>    ? trace_hardirqs_on+0x1e/0xd0
>    ? __pfx_pci_iommu_init+0x10/0x10
>    pci_iommu_init+0xd/0x40
>    do_one_initcall+0x5b/0x390
>    kernel_init_freeable+0x26d/0x2b0
>    ? __pfx_kernel_init+0x10/0x10
>    kernel_init+0x15/0x120
>    ret_from_fork+0x35/0x60
>    ? __pfx_kernel_init+0x10/0x10
>    ret_from_fork_asm+0x1a/0x30
>   RIP: 1f0f:0x0
>   Code: Unable to access opcode bytes at 0xffffffffffffffd6.
>   RSP: 0000:0000000000000000 EFLAGS: 841f0f2e66 ORIG_RAX:
>        1f0f2e6600000000
>   RAX: 0000000000000000 RBX: 1f0f2e6600000000 RCX:
>        2e66000000000084
>   RDX: 0000000000841f0f RSI: 000000841f0f2e66 RDI:
>        00841f0f2e660000
>   RBP: 00841f0f2e660000 R08: 00841f0f2e660000 R09:
>        000000841f0f2e66
>   R10: 0000000000841f0f R11: 2e66000000000084 R12:
>        000000841f0f2e66
>   R13: 0000000000841f0f R14: 2e66000000000084 R15:
>        1f0f2e6600000000
>    </TASK>
>   ---[ end Kernel panic - not syncing: DMAR hardware is malfunctioning ]---
> 
> Fix this by reverting the timing change for ATS enablement introduced by
> the offending commit and restoring the previous behavior.
> 
> Fixes: 5518f239aff1 ("iommu/vt-d: Move scalable mode ATS enablement to probe path")
> Reported-by: Jarkko Nikula <jarkko.nikula@...ux.intel.com>
> Closes: https://lore.kernel.org/linux-iommu/01b9c72f-460d-4f77-b696-54c6825babc9@linux.intel.com/
> Signed-off-by: Lu Baolu <baolu.lu@...ux.intel.com>
> ---
>   drivers/iommu/intel/iommu.c | 31 +++++++++++++++++++------------
>   1 file changed, 19 insertions(+), 12 deletions(-)
> 
Tested-by: Jarkko Nikula <jarkko.nikula@...ux.intel.com>

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ