From: sashiko-bot@kernel.org
To: "Maulik Shah" <maulik.shah@oss.qualcomm.com>
Cc: devicetree@vger.kernel.org, robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH 1/3] dt-bindings: power: domain-idle-state: Add system-state
Date: Mon, 05 Oct 2026 15:35:17 +0000 [thread overview]
Message-ID: <20261005153517.A07C41F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20261005-s2idle_state-v1-1-3c402c66f388@oss.qualcomm.com>
Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [Critical] dt-bindings: backwards compatibility broken by reusing domain-idle-state
--
commit 7783b35f06985a4e4112599684740ef1b9b25325
Author: Maulik Shah <maulik.shah@oss.qualcomm.com>
dt-bindings: power: domain-idle-state: Add system-state
Some domain idle states require system-wide coordination and are not
applicable while the platform is up and running. Add a boolean system-state
property to describe these states.
> diff --git a/Documentation/devicetree/bindings/power/domain-idle-state.yaml b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> index 4dd4f59bbbec3..35dab3cd6aedc 100644
> --- a/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> +++ b/Documentation/devicetree/bindings/power/domain-idle-state.yaml
> @@ -45,6 +45,12 @@ patternProperties:
> state will yield power benefits, after overcoming the overhead while
> entering the idle state.
>
> + system-state:
> + description:
> + When present, this state requires system-wide coordination and is
> + not applicable while the platform is up and running.
> + type: boolean
> +
[Severity: Critical]
Does adding this property to nodes that still use the "domain-idle-state"
compatible string break backwards compatibility?
When an older kernel parses a Device Tree containing a system-only power
state, it traverses the domain-idle-states phandles and matches the
compatible = "domain-idle-state" string. Because older kernels do not
recognize the newly introduced system-state boolean property, they will
silently ignore it and incorrectly register the system-only state as a
regular runtime cpuidle state.
If the runtime governor selects this system-suspend state during normal
operation, the lack of system-wide coordination can cause the hardware to
hang or crash. Device Tree bindings form an ABI between firmware/bootloader
and the OS, meaning newer Device Trees must safely degrade on older kernels.
Could a new compatible string (e.g., compatible = "domain-system-state") or
a distinct linking property (e.g., domain-system-states) be introduced
instead, so older kernels naturally skip parsing it?
[ ... ]
> @@ -77,5 +83,13 @@ examples:
> exit-latency-us = <40>;
> min-residency-us = <80>;
> };
> +
> + domain_power_off: domain-power-off {
> + compatible = "domain-idle-state";
> + entry-latency-us = <100>;
> + exit-latency-us = <200>;
> + min-residency-us = <1000>;
> + system-state;
> + };
> };
> ...
[Severity: Critical]
Does this example demonstrate the compatibility issue? A state explicitly
restricted to system-wide coordination still uses the "domain-idle-state"
compatible string, which would render it structurally unsafe for older OS
releases to process.
--
Sashiko AI review · https://sashiko.dev/#/patchset/20261005-s2idle_state-v1-0-3c402c66f388@oss.qualcomm.com?part=1
next prev parent reply other threads:[~2026-10-05 15:35 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-10-05 15:29 [PATCH 0/3] pmdomain: Support system-suspend-only domain idle states Maulik Shah
2026-10-05 15:29 ` [PATCH 1/3] dt-bindings: power: domain-idle-state: Add system-state Maulik Shah
2026-10-05 15:35 ` sashiko-bot [this message]
2026-10-06 9:11 ` Sudeep Holla
2026-10-05 15:29 ` [PATCH 2/3] pmdomain: Add support for system-suspend-only states Maulik Shah
2026-10-06 9:15 ` Sudeep Holla
2026-10-07 18:55 ` Val Packett
2026-10-08 9:16 ` Sudeep Holla
2026-10-08 12:21 ` Ulf Hansson
2026-10-09 12:21 ` Sudeep Holla
2026-10-09 14:26 ` Ulf Hansson
2026-10-09 15:27 ` Sudeep Holla
2026-10-13 10:11 ` Ulf Hansson
2026-10-05 15:29 ` [PATCH 3/3] arm64: dts: qcom: monaco-evk: Add suspend-only power collapse state Maulik Shah
2026-10-05 15:38 ` sashiko-bot
2026-10-13 9:08 ` Konrad Dybcio
2026-10-06 13:32 ` [PATCH 0/3] pmdomain: Support system-suspend-only domain idle states Kevin Hilman
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=20261005153517.A07C41F000FF@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=maulik.shah@oss.qualcomm.com \
--cc=robh@kernel.org \
--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.