lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <trinity-cb228db4-32f9-4606-b733-2d148073de5d-1693739337284@3c-app-gmx-bap43>
Date:   Sun, 3 Sep 2023 13:08:57 +0200
From:   Frank Wunderlich <frank-w@...lic-files.de>
To:     Rob Herring <robh+dt@...nel.org>,
        Krzysztof Kozlowski <krzysztof.kozlowski+dt@...aro.org>
Cc:     devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: RecursionError when try to check bindings (ubuntu 22.04 /
 Python3.10)

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@...nel.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?

regards Frank

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ