From: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
To: sashiko-reviews@lists.linux.dev
Cc: devicetree@vger.kernel.org, robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH 4/9] dtc: dt-check-style: Handle sorting of top-level nodes and properties
Date: Sat, 1 Aug 2026 23:31:55 +0200 [thread overview]
Message-ID: <2e52b5d8-9499-447d-a329-166d50723bba@oss.qualcomm.com> (raw)
In-Reply-To: <7177d789-5544-43ad-977a-faf64681788c@oss.qualcomm.com>
On 01/08/2026 23:19, Krzysztof Kozlowski wrote:
> On 26/07/2026 17:57, sashiko-bot@kernel.org wrote:
>> Thank you for your contribution! Sashiko AI review found 3 potential issue(s) to consider:
>> - [Medium] Tree hierarchy tracking in `_walk_bodies()` is broken, incorrectly assigning closed sibling nodes as parents to subsequent siblings.
>> - [Medium] `_property_bucket_root()` collapses standard and vendor properties into a single bucket, breaking canonical property ordering at the root node.
>> - [Medium] Top-level addressed nodes are exempted from address sorting but are never subjected to the node name sorting claimed in the commit message.
>> --
>>
>> --- Patch [4]: [PATCH 4/9] dtc: dt-check-style: Handle sorting of top-level nodes and properties ---
>> commit d752014f34dc3d4a2a9f9617748ec741da0cb1c5
>> Author: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
>>
>> dtc: dt-check-style: Handle sorting of top-level nodes and properties
>>
>> This commit updates the DTS styling rules for top-level nodes and properties.
>> It skips unit-address sorting for root nodes since they mix unit and non-unit
>> addresses. It also adds a special case for the 'model' property to sort before
>> 'compatible' at the root node.
>>
>>> diff --git a/scripts/dtc/dt-check-style b/scripts/dtc/dt-check-style
>>> index 1937c6feb57ec..db4451e30dfbc 100755
>>> --- a/scripts/dtc/dt-check-style
>>> +++ b/scripts/dtc/dt-check-style
>>
>> [ ... ]
>>
>>> @@ -496,15 +497,21 @@ def _walk_bodies(lines):
>>> in the input. Skips ref-nodes (&label) since those don't have an
>>> intrinsic ordering."""
>>> body_stack = [[]]
>>> + node_stack = [[]]
>>> + parent_dl = None
>>> for dl in lines:
>>> if dl.linetype == LineType.NODE_OPEN:
>>> + dl.parent = parent_dl
>>> + node_stack.append(dl)
>>> body_stack[-1].append(dl)
>>> body_stack.append([])
>>> + parent_dl = dl
>>> continue
>>> if dl.linetype == LineType.NODE_CLOSE:
>>> if len(body_stack) <= 1:
>>> # Unbalanced; ignore to avoid crashing on malformed input
>>> continue
>>> + parent_dl = node_stack.pop()
>>
>> [Severity: Medium]
>> Does this pop the node that just closed instead of the actual parent?
>>
>> When node_stack.pop() is called here, it returns the node that just closed
>> because that was the last one appended. Does this cause subsequent siblings
>
> That's intended, since we go up in the hierarchy. Current parent should
> be now what we left on the stack.
Actually this was right.
Best regards,
Krzysztof
next prev parent reply other threads:[~2026-08-01 21:32 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-26 15:47 [PATCH 0/9] dtc: dt-check-style: Improvements for false positives Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 1/9] dtc: dt-check-style: Add missing /dts-v1/ to few test cases Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 2/9] dtc: dt-check-style: Simplify setting depth of DtsLine Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 3/9] dtc: dt-check-style: Handle root node in overlays Krzysztof Kozlowski
2026-07-26 16:00 ` sashiko-bot
2026-08-01 17:43 ` Krzysztof Kozlowski
2026-08-01 17:45 ` Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 4/9] dtc: dt-check-style: Handle sorting of top-level nodes and properties Krzysztof Kozlowski
2026-07-26 15:57 ` sashiko-bot
2026-08-01 21:19 ` Krzysztof Kozlowski
2026-08-01 21:31 ` Krzysztof Kozlowski [this message]
2026-07-26 15:47 ` [PATCH 5/9] dtc: dt-check-style: Drop stray backslash before quote for continuation-alignment Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 6/9] dtc: dt-check-style: Fix alignment of values in continued property lines Krzysztof Kozlowski
2026-07-26 15:56 ` sashiko-bot
2026-08-02 8:22 ` Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 7/9] dtc: dt-check-style: Consistently call 'kind' as 'file_type' Krzysztof Kozlowski
2026-07-26 15:53 ` sashiko-bot
2026-07-26 15:47 ` [PATCH 8/9] dtc: dt-check-style: Introduce 'stricter' mode Krzysztof Kozlowski
2026-07-26 15:54 ` sashiko-bot
2026-08-02 8:30 ` Krzysztof Kozlowski
2026-07-26 15:47 ` [PATCH 9/9] MAINTAINERS: dt-bindings: Include dt-check-style in DT binding entry Krzysztof Kozlowski
2026-07-27 19:54 ` [PATCH 0/9] dtc: dt-check-style: Improvements for false positives Krzysztof Kozlowski
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=2e52b5d8-9499-447d-a329-166d50723bba@oss.qualcomm.com \
--to=krzysztof.kozlowski@oss.qualcomm.com \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox