From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
To: Frank Wunderlich <frank-w@public-files.de>,
Rob Herring <robh+dt@kernel.org>,
Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: RecursionError when try to check bindings (ubuntu 22.04 / Python3.10)
Date: Mon, 4 Sep 2023 20:18:10 +0200 [thread overview]
Message-ID: <fe976c19-0f40-5e35-6704-6d014eccd376@linaro.org> (raw)
In-Reply-To: <trinity-cb228db4-32f9-4606-b733-2d148073de5d-1693739337284@3c-app-gmx-bap43>
On 03/09/2023 13:08, Frank Wunderlich wrote:
> Hi,
>
> i tried to check a binding-file with 6.5 kernelsource and get this error
>
> GNU nano 6.2 dt.log
> LINT Documentation/devicetree/bindings
> CHKDT Documentation/devicetree/bindings/processed-schema.json
> SCHEMA Documentation/devicetree/bindings/processed-schema.json
> Traceback (most recent call last):
> File "/home/frank/.local/bin/dt-mk-schema", line 38, in <module>
> schemas = dtschema.DTValidator(args.schemas).schemas
> File "/home/frank/.local/lib/python3.10/site-packages/dtschema/validator.py", line 354, in __init__
> self.schemas = process_schemas(schema_files)
> File "/home/frank/.local/lib/python3.10/site-packages/dtschema/validator.py", line 271, in process_schemas
> sch = process_schema(os.path.abspath(filename))
> File "/home/frank/.local/lib/python3.10/site-packages/dtschema/validator.py", line 248, in process_schema
> dtsch.is_valid()
> File "/home/frank/.local/lib/python3.10/site-packages/dtschema/schema.py", line 145, in is_valid
> for error in self.DtValidator(self.DtValidator.META_SCHEMA).iter_errors(self):
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/validators.py", line 242, in iter_errors
> for error in errors:
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/_validators.py", line 362, in allOf
> yield from validator.descend(instance, subschema, schema_path=index)
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/validators.py", line 258, in descend
> for error in self.evolve(schema=schema).iter_errors(instance):
>
> block from line 242-258 repeats many times (~2000 lines in log)
>
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/validators.py", line 242, in iter_errors
> for error in errors:
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/_legacy_validators.py", line 216, in recursiveRef
> lookup_url, next_target = validator.resolver.resolve(each)
> File "/home/frank/.local/lib/python3.10/site-packages/jsonschema/validators.py", line 835, in resolve
> url = self._urljoin_cache(self.resolution_scope, ref).rstrip("/")
> RecursionError: maximum recursion depth exceeded in comparison
>
> make[2]: *** [Documentation/devicetree/bindings/Makefile:68: Documentation/devicetree/bindings/processed-schema.json] Error 1
> make[2]: *** Deleting file 'Documentation/devicetree/bindings/processed-schema.json'
> make[1]: *** [/media/data_nvme/git/kernel/BPI-R2-4.14/Makefile:1516: dt_binding_check] Error 2
> make: *** [Makefile:234: __sub-make] Error 2
>
> my command is (after importing defconfig, also tried a clean before):
>
> ARCH=arm64 CROSS_COMPILE=aarch64-linux-gnu- make dt_binding_check
>
> already did an update of dtschema with "pip3 install dtschema --upgrade" and also an uninstall/install of this python-package
>
> $ pip3 show dtschema
> Name: dtschema
> Version: 2023.7
> Summary: DeviceTree validation schema and tools
> Home-page: https://github.com/devicetree-org/dt-schema
> Author: Rob Herring
> Author-email: robh@kernel.org
> License: BSD
> Location: /home/frank/.local/lib/python3.10/site-packages
> Requires: jsonschema, pylibfdt, rfc3987, ruamel.yaml
> Required-by:
>
> any idea what can be the cause?
Can you share the reproduction steps? This probably is some error in
schema which is then not nicely handled by dtschema.
Best regards,
Krzysztof
next prev parent reply other threads:[~2023-09-04 18:18 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-09-03 11:08 Frank Wunderlich
2023-09-04 18:18 ` Krzysztof Kozlowski [this message]
2023-09-04 18:33 ` Aw: " Frank Wunderlich
2023-09-04 19:21 ` Krzysztof Kozlowski
2023-09-04 19:27 ` Aw: " Frank Wunderlich
2023-09-04 19:17 ` Aw: " Frank Wunderlich
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=fe976c19-0f40-5e35-6704-6d014eccd376@linaro.org \
--to=krzysztof.kozlowski@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=frank-w@public-files.de \
--cc=krzysztof.kozlowski+dt@linaro.org \
--cc=linux-kernel@vger.kernel.org \
--cc=robh+dt@kernel.org \
/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
all inboxes | Powered by JetHome®