Uploaded image for project: 'Qt'
  1. Qt
  2. QTBUG-126810

Shadertools: UBSan complains in glslang and SPIRV-Cross

    XMLWordPrintable

Details

    • Task
    • Resolution: Unresolved
    • P2: Important
    • None
    • 6.9
    • Qt Shader Tools
    • None
    • All

    Description

        qt6/build/debug ‹dev› ninja qtdeclarative -j9                                                                                                                                        1 ↵
      [11/2799] Generating .qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb
      FAILED: qtdeclarative/src/quick/.qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick/.qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb
      cd /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick && /home/ddob/qt/qt6/build/debug/qtbase/bin/qsb --glsl 100es,120,150 --hlsl 50 --msl 12 -b -O -s -o /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick/.qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb --depfile /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick/.qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb.d /home/ddob/qt/qt6/qtdeclarative/src/quick/scenegraph/shaders_ng/24bittextmask.frag && /usr/bin/cmake -E cmake_transform_depfile Ninja gccdepfile /home/ddob/qt/qt6 /home/ddob/qt/qt6/qtdeclarative/src/quick /home/ddob/qt/qt6/build/debug /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick /home/ddob/qt/qt6/build/debug/qtdeclarative/src/quick/.qsb/scenegraph/shaders_ng/24bittextmask.frag.qsb.d /home/ddob/qt/qt6/build/debug/CMakeFiles/d/1f3d769a6a01d48b0660c8b023534840c88f112646b71a97206e0c979f65f4e4.d
      /home/ddob/qt/qt6/qtshadertools/src/3rdparty/SPIRV-Cross/spirv_cross_c.cpp:2242:10: runtime error: downcast of address 0x522000002380 which does not point to an object of type 'spvc_type_s'
      0x522000002380: note: object is of type 'spirv_cross::SPIRType'
       00 00 00 00  c0 85 9a 12 58 75 00 00  0f 00 00 00 17 00 00 00  0d 00 00 00 20 00 00 00  02 00 00 00
                    ^~~~~~~~~~~~~~~~~~~~~~~
                    vptr for 'spirv_cross::SPIRType'=================================================================
      ==32409==ERROR: LeakSanitizer: detected memory leaksDirect leak of 32 byte(s) in 1 object(s) allocated from:
          #0 0x7558180fb6e2 in realloc /usr/src/debug/gcc/gcc/libsanitizer/asan/asan_malloc_linux.cpp:85
          #1 0x7557f06b0833 in d_growable_string_resize /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4327
          #2 0x7557f06b0833 in d_growable_string_append_buffer /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4351
          #3 0x7557f06b0833 in d_growable_string_callback_adapter /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4368
          #4 0x7557f06bb978 in d_print_flush /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4585
          #5 0x7557f06bb978 in d_print_callback /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4671
          #6 0x7557f06bb978 in d_demangle_callback /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6896
          #7 0x7557f06bc3c8 in d_demangle /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6918
          #8 0x7557f06bc3c8 in __cxa_demangle /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6982
          #9 0x7557efe2e4bb in __sanitizer::Symbolizer::Demangle(char const*) /usr/src/debug/gcc/gcc/libsanitizer/sanitizer_common/sanitizer_symbolizer_libcdep.cpp:169
          #10 0x7557efe065e2 in RenderText /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_diag.cpp:199
          #11 0x7557efe07cc2 in PrintMemorySnippet /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_diag.cpp:329
          #12 0x7557efe07cc2 in __ubsan::Diag::~Diag() /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_diag.cpp:385
          #13 0x7557efe0de9e in HandleDynamicTypeCacheMiss /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_handlers_cxx.cpp:69
          #14 0x7557efe0e1be in __ubsan_handle_dynamic_type_cache_miss /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_handlers_cxx.cpp:87
          #15 0x75580f8e5e7f in spvc_compiler_get_type_handle /home/ddob/qt/qt6/qtshadertools/src/3rdparty/SPIRV-Cross/spirv_cross_c.cpp:2242
          #16 0x75580f806247 in Debug::QSpirvShaderPrivate::inOutVar(spvc_reflected_resource const&) /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:212
          #17 0x75580f80ace2 in Debug::QSpirvShaderPrivate::reflect() /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:375
          #18 0x75580f810fee in Debug::QSpirvShader::setSpirvBinary(Debug::QByteArray const&, Debug::QShader::Stage) /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:638
          #19 0x75580f7a7e7b in Debug::QShaderBaker::bake() /home/ddob/qt/qt6/qtshadertools/src/shadertools/qshaderbaker.cpp:618
          #20 0x57ed788783bf in main /home/ddob/qt/qt6/qtshadertools/tools/qsb/qsb.cpp:872
          #21 0x7557efc39c87  (/usr/lib/libc.so.6+0x25c87) (BuildId: 32a656aa5562eece8c59a585f5eacd6cf5e2307b)
          #22 0x7557efc39d4b in __libc_start_main (/usr/lib/libc.so.6+0x25d4b) (BuildId: 32a656aa5562eece8c59a585f5eacd6cf5e2307b)
          #23 0x57ed788588d4 in _start (/home/ddob/qt/qt6/build/debug/qtbase/bin/qsb+0x928d4) (BuildId: e864d9547945c3a81c1085ad3e7c0b890ceccd54)Direct leak of 32 byte(s) in 1 object(s) allocated from:
          #0 0x7558180fb6e2 in realloc /usr/src/debug/gcc/gcc/libsanitizer/asan/asan_malloc_linux.cpp:85
          #1 0x7557f06b0833 in d_growable_string_resize /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4327
          #2 0x7557f06b0833 in d_growable_string_append_buffer /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4351
          #3 0x7557f06b0833 in d_growable_string_callback_adapter /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4368
          #4 0x7557f06bb978 in d_print_flush /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4585
          #5 0x7557f06bb978 in d_print_callback /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:4671
          #6 0x7557f06bb978 in d_demangle_callback /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6896
          #7 0x7557f06bc3c8 in d_demangle /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6918
          #8 0x7557f06bc3c8 in __cxa_demangle /usr/src/debug/gcc/gcc-build/x86_64-pc-linux-gnu/libstdc++-v3/libsupc++/cp-demangle.c:6982
          #9 0x7557efe2e4bb in __sanitizer::Symbolizer::Demangle(char const*) /usr/src/debug/gcc/gcc/libsanitizer/sanitizer_common/sanitizer_symbolizer_libcdep.cpp:169
          #10 0x7557efe065e2 in RenderText /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_diag.cpp:199
          #11 0x7557efe073b0 in __ubsan::Diag::~Diag() /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_diag.cpp:379
          #12 0x7557efe0de9e in HandleDynamicTypeCacheMiss /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_handlers_cxx.cpp:69
          #13 0x7557efe0e1be in __ubsan_handle_dynamic_type_cache_miss /usr/src/debug/gcc/gcc/libsanitizer/ubsan/ubsan_handlers_cxx.cpp:87
          #14 0x75580f8e5e7f in spvc_compiler_get_type_handle /home/ddob/qt/qt6/qtshadertools/src/3rdparty/SPIRV-Cross/spirv_cross_c.cpp:2242
          #15 0x75580f806247 in Debug::QSpirvShaderPrivate::inOutVar(spvc_reflected_resource const&) /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:212
          #16 0x75580f80ace2 in Debug::QSpirvShaderPrivate::reflect() /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:375
          #17 0x75580f810fee in Debug::QSpirvShader::setSpirvBinary(Debug::QByteArray const&, Debug::QShader::Stage) /home/ddob/qt/qt6/qtshadertools/src/shadertools/qspirvshader.cpp:638
          #18 0x75580f7a7e7b in Debug::QShaderBaker::bake() /home/ddob/qt/qt6/qtshadertools/src/shadertools/qshaderbaker.cpp:618
          #19 0x57ed788783bf in main /home/ddob/qt/qt6/qtshadertools/tools/qsb/qsb.cpp:872
          #20 0x7557efc39c87  (/usr/lib/libc.so.6+0x25c87) (BuildId: 32a656aa5562eece8c59a585f5eacd6cf5e2307b)
          #21 0x7557efc39d4b in __libc_start_main (/usr/lib/libc.so.6+0x25d4b) (BuildId: 32a656aa5562eece8c59a585f5eacd6cf5e2307b)
          #22 0x57ed788588d4 in _start (/home/ddob/qt/qt6/build/debug/qtbase/bin/qsb+0x928d4) (BuildId: e864d9547945c3a81c1085ad3e7c0b890ceccd54)SUMMARY: AddressSanitizer: 64 byte(s) leaked in 2 allocation(s).
      [19/2799] Automatic MOC and UIC for target Widgets
      ninja: build stopped: subcommand failed. 

      Attachments

        For Gerrit Dashboard: QTBUG-126810
        # Subject Branch Project Status CR V

        Activity

          People

            lagocs Laszlo Agocs
            dennisoberst Dennis Oberst
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are 2 open Gerrit changes