From: sashiko-bot@kernel.org
To: "Vikash Garodia" <vikash.garodia@oss.qualcomm.com>
Cc: robh@kernel.org, devicetree@vger.kernel.org, conor+dt@kernel.org
Subject: Re: [RFC PATCH 11/11] arm64: dts: qcom: sm8650: Move Iris IOMMUs to child nodes
Date: Thu, 09 Jul 2026 15:29:38 +0000 [thread overview]
Message-ID: <20260709152938.B4CCA1F000E9@smtp.kernel.org> (raw)
In-Reply-To: <20260709-vpu_iommu_iova_handling-v1-11-72bb62cb2dfd@oss.qualcomm.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Using `iommu-addresses` without a `reg` property inside the `reserved-memory` node creates an `IOMMU_RESV_RESERVED` region. This explicitly excludes the 0-600MB IOVA range from being allocated, which completely contradicts the patch's stated intention to limit allocations to this range.
--
--- Patch [11]: [RFC PATCH 11/11] arm64: dts: qcom: sm8650: Move Iris IOMMUs to child nodes ---
commit c2708742df23b3eb0cc33ed47303581c81143971
Author: Vikash Garodia <vikash.garodia@oss.qualcomm.com>
arm64: dts: qcom: sm8650: Move Iris IOMMUs to child nodes
This patch separates the Iris VPU streams into pixel and non-pixel child
nodes to enforce different IOVA constraints. It attempts to limit the
non-pixel stream to the 0-600 MB IOVA range by adding a reserved IOVA
range node.
> diff --git a/arch/arm64/boot/dts/qcom/sm8650.dtsi b/arch/arm64/boot/dts/qcom/sm8650.dtsi
> index 447b788fcbb96..f9c03de1317f1 100644
> --- a/arch/arm64/boot/dts/qcom/sm8650.dtsi
> +++ b/arch/arm64/boot/dts/qcom/sm8650.dtsi
> @@ -1849,6 +1849,10 @@ llcc_lpi_mem: llcc-lpi@ff800000 {
> reg = <0 0xff800000 0 0x600000>;
> no-map;
> };
> +
> + iris_resv: reservation-iris {
> + iommu-addresses = <&iris_non_pixel 0x0 0x0 0x0 0x25800000>;
> + };
[Severity: High]
Does using iommu-addresses without a reg property in this reserved-memory
node actually block the 0-600MB range instead of allowing allocations
within it?
When the non-pixel device is initialized, iommu_dma_init_domain() calls
of_iommu_get_resv_regions(). Because iris_resv lacks a reg property,
this function returns an IOMMU_RESV_RESERVED region for 0-600MB. The
generic IOMMU layer then calls reserve_iova(), inserting this range into
the rbtree as occupied.
If the 0-600MB range is reserved as blocked, will dma_alloc_attrs() for
the non-pixel stream skip this region entirely and return IOVAs strictly
above 600MB?
This appears to contradict the stated intention of limiting allocations
to the 0-600MB range, which could guarantee the very device crash the
patch aims to fix.
[ ... ]
> @@ -5231,6 +5235,15 @@ &config_noc SLAVE_VENUS_CFG QCOM_ICC_TAG_ACTIVE_ONLY>,
> */
> status = "disabled";
>
> + iris_non_pixel: non-pixel {
> + iommus = <&apps_smmu 0x1940 0x0>;
> + memory-region = <&iris_resv>;
> + };
> +
> + iris_pixel: pixel {
> + iommus = <&apps_smmu 0x1947 0x0>;
> + };
> +
> iris_opp_table: opp-table {
> compatible = "operating-points-v2";
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260709-vpu_iommu_iova_handling-v1-0-72bb62cb2dfd@oss.qualcomm.com?part=11
next prev parent reply other threads:[~2026-07-09 15:29 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <7GAZnP6jPoRrcDnaVzeaB98cONLhtvbiEXV1yD5MJJrA9pCnC9lmlSiCGA8vlDezSXADjmFiqo3ZdClO5SxCFA==@protonmail.internalid>
2026-07-09 12:35 ` [RFC PATCH 00/11] : media: iris: Migrate iommus to iris sub nodes Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 01/11] dt-bindings: media: qcom,sm8550-iris: Add vpu " Vikash Garodia
2026-07-09 12:46 ` sashiko-bot
2026-07-09 12:50 ` Dmitry Baryshkov
2026-07-10 6:02 ` Vikash Garodia
2026-07-10 15:53 ` Dmitry Baryshkov
2026-07-11 5:46 ` Vikash Garodia
2026-07-10 22:02 ` Bryan O'Donoghue
2026-07-09 12:35 ` [RFC PATCH 02/11] media: iris: Add hooks to initialize and tear down context banks Vikash Garodia
2026-07-09 12:57 ` sashiko-bot
2026-07-09 12:35 ` [RFC PATCH 03/11] media: iris: Add helper to create a context bank device Vikash Garodia
2026-07-09 13:10 ` sashiko-bot
2026-07-14 13:49 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 04/11] media: iris: Add helper to select relevant " Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 05/11] media: iris: Skip DMA mask setting to core device when IOMMU is not mapped Vikash Garodia
2026-07-09 13:10 ` Dmitry Baryshkov
2026-07-09 13:43 ` sashiko-bot
2026-07-14 13:48 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 06/11] media: iris: Add hooks for pixel and non-pixel context banks Vikash Garodia
2026-07-09 13:14 ` Dmitry Baryshkov
2026-07-10 6:32 ` Vikash Garodia
2026-07-10 16:03 ` Dmitry Baryshkov
2026-07-09 13:54 ` sashiko-bot
2026-07-10 16:12 ` Dmitry Baryshkov
2026-07-14 7:23 ` Vikash Garodia
2026-07-14 13:39 ` Vikash Garodia
2026-07-14 13:43 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 07/11] arm64: dts: qcom: hamoa: Move Iris IOMMUs to sub nodes Vikash Garodia
2026-07-09 13:03 ` Dmitry Baryshkov
2026-07-10 6:05 ` Vikash Garodia
2026-07-10 21:05 ` Dmitry Baryshkov
2026-07-09 14:10 ` sashiko-bot
2026-07-14 13:02 ` Vikash Garodia
2026-07-10 10:48 ` Bryan O'Donoghue
2026-07-10 22:46 ` Bryan O'Donoghue
2026-07-12 12:19 ` Dmitry Baryshkov
2026-07-13 6:02 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 08/11] arm64: dts: qcom: sm8550: Move Iris IOMMUs to child nodes Vikash Garodia
2026-07-09 14:30 ` sashiko-bot
2026-07-14 13:01 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 09/11] arm64: dts: qcom: lemans: " Vikash Garodia
2026-07-09 14:44 ` sashiko-bot
2026-07-14 11:08 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 10/11] arm64: dts: qcom: monaco: " Vikash Garodia
2026-07-09 15:03 ` sashiko-bot
2026-07-14 11:07 ` Vikash Garodia
2026-07-09 12:35 ` [RFC PATCH 11/11] arm64: dts: qcom: sm8650: " Vikash Garodia
2026-07-09 15:29 ` sashiko-bot [this message]
2026-07-14 11:06 ` Vikash Garodia
2026-07-10 10:35 ` [RFC PATCH 00/11] : media: iris: Migrate iommus to iris sub nodes Bryan O'Donoghue
2026-07-10 13:36 ` Vikash Garodia
2026-07-10 13:38 ` Bryan O'Donoghue
2026-07-10 14:02 ` Vikash Garodia
2026-07-12 12:24 ` Dmitry Baryshkov
2026-07-13 5:59 ` Vikash Garodia
2026-07-12 11:51 ` Daniel J Blueman
2026-07-13 5:53 ` Vikash Garodia
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=20260709152938.B4CCA1F000E9@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
--cc=vikash.garodia@oss.qualcomm.com \
/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.