From: sashiko-bot@kernel.org
To: "Pranjal Shrivastava" <praan@google.com>
Cc: linux-pci@vger.kernel.org
Subject: Re: [PATCH 6/6] PCI/ATS: Mandate checking pci_ats_supported() before pci_prepare_ats()
Date: Mon, 01 Jun 2026 19:06:22 +0000 [thread overview]
Message-ID: <20260601190623.269F81F00893@smtp.kernel.org> (raw)
In-Reply-To: <20260601134204.2150602-7-praan@google.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Adding a WARN_ON() to pci_prepare_ats() causes spurious kernel warnings and potential panics because the ARM SMMUv3 driver does not check pci_ats_supported() prior to calling it.
--
commit eaccac64f7c8e00ef695d5c2076021c097520251
Author: Pranjal Shrivastava <praan@google.com>
PCI/ATS: Mandate checking pci_ats_supported() before pci_prepare_ats()
This commit updates pci_prepare_ats() to wrap the internal
pci_ats_supported() check in a WARN_ON(). It is intended to mandate that
all callers verify ATS support before calling the function.
> diff --git a/drivers/pci/ats.c b/drivers/pci/ats.c
> --- a/drivers/pci/ats.c
> +++ b/drivers/pci/ats.c
> @@ -61,7 +63,7 @@ int pci_prepare_ats(struct pci_dev *dev, int ps)
> {
> u16 ctrl;
>
> - if (!pci_ats_supported(dev))
> + if (WARN_ON(!pci_ats_supported(dev)))
[Severity: High]
Will this trigger spurious warnings or panics for non-ATS PCI devices
on ARM systems?
The arm_smmu_probe_device() function appears to unconditionally invoke
pci_prepare_ats() for all PCI devices without verifying ATS support first:
drivers/iommu/arm/arm-smmu-v3/arm-smmu-v3.c:arm_smmu_probe_device() {
...
if (dev_is_pci(dev)) {
unsigned int stu = __ffs(smmu->pgsize_bitmap);
pci_prepare_ats(to_pci_dev(dev), stu);
}
...
}
Since this unpatched caller does not check pci_ats_supported() first, any
standard PCI device lacking ATS support might trigger this new WARN_ON()
during IOMMU device probe.
> return -EINVAL;
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260601134204.2150602-1-praan@google.com?part=6
next prev parent reply other threads:[~2026-06-01 19:06 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-01 13:41 [PATCH 0/6] iommu/amd: Refactors for ATS updates Pranjal Shrivastava
2026-06-01 13:41 ` [PATCH 1/6] iommu/amd: Clear aliases before setting the rlookup_table to NULL Pranjal Shrivastava
2026-06-01 13:57 ` sashiko-bot
2026-06-01 13:42 ` [PATCH 2/6] iommu/amd: Clear DTE with update_dte256 in iommu_ignore_device() Pranjal Shrivastava
2026-06-01 14:09 ` sashiko-bot
2026-06-01 14:19 ` Jason Gunthorpe
2026-06-02 4:01 ` Pranjal Shrivastava
2026-06-02 8:55 ` Vasant Hegde
2026-06-01 13:42 ` [PATCH 3/6] iommu/amd: Split probe error paths to preserve IRQ remapping Pranjal Shrivastava
2026-06-01 14:30 ` sashiko-bot
2026-06-01 13:42 ` [PATCH 4/6] iommu/amd: Fix Use-After-Free in non-fatal probe error path Pranjal Shrivastava
2026-06-01 14:44 ` sashiko-bot
2026-06-01 13:42 ` [PATCH 5/6] iommu/amd: Fail probe on ATS configuration failure Pranjal Shrivastava
2026-06-01 15:01 ` sashiko-bot
2026-06-01 15:05 ` Pranjal Shrivastava
2026-06-01 13:42 ` [PATCH 6/6] PCI/ATS: Mandate checking pci_ats_supported() before pci_prepare_ats() Pranjal Shrivastava
2026-06-01 19:06 ` sashiko-bot [this message]
2026-06-02 8:49 ` [PATCH 0/6] iommu/amd: Refactors for ATS updates Vasant Hegde
2026-06-02 12:08 ` Jason Gunthorpe
2026-06-04 8:23 ` Vasant Hegde
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=20260601190623.269F81F00893@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=praan@google.com \
--cc=sashiko-reviews@lists.linux.dev \
/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.