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

Chromium build, v8_context_snapshot_generator execution fails: Perfetto error: "A track event used an unknown category."

    XMLWordPrintable

Details

    • Bug
    • Resolution: Unresolved
    • P1: Critical
    • None
    • 6.9.1
    • WebEngine
    • None
    • Windows

    Description

      When building Qt 6.9.1 from sources on Windows with VS 2022 (17.14.7) with QtWebengine, Debug Version
      (This is my exact command line 

      call configure.bat -debug-and-release -force-debug-info -nomake examples -nomake tests -openssl-linked  -- -DOPENSSL_ROOT_DIR=c:\Projects\openssl-3.2.2
      cmake --build . --parallel 2

      ):

      Somewhere, when building Chromium, the build fails with this error message:

      [263/264] ACTION //tools/v8_context_snapshot:generate_v8_context_snapshot(/C:/Qt6/Src/qtwebengine/src/core/target_toolchain:x64)
      FAILED: v8_context_snapshot.debug.bin
      C:/Python312/python.exe ../../../3rdparty/chromium/build/gn_run_binary.py ./v8_context_snapshot_generator --output_file=v8_context_snapshot.debug.bin
      [278.760] category_registry.h:292 PERFETTO_CHECK(false && "A track event used an unknown category. Please add it to " "PERFETTO_DEFINE_CATEGORIES().")
      ./v8_context_snapshot_generator failed with exit code 2147483651
      ninja: build stopped: subcommand failed.

       

      I already found out the name of the unknown category, it is: "test"
      (Though I did not find out, where it was falsely used in a perfetto macro)

      A possible bugfix is to add this category in these files:

      Src\qtwebengine\src\3rdparty\chromium\base\trace_event\builtin_categories.h:

        X(TRACE_DISABLED_BY_DEFAULT("webgpu"))                                 \
        X(TRACE_DISABLED_BY_DEFAULT("webnn"))                                  \
        X(TRACE_DISABLED_BY_DEFAULT("webrtc"))                                 \
        X(TRACE_DISABLED_BY_DEFAULT("worker.scheduler"))                       \
        X(TRACE_DISABLED_BY_DEFAULT("xr.debug"))                               \
        X("test")               

                                                     

      Src\qtwebengine\src\3rdparty\chromium\v8\src\tracingtrace-categories.h:
      (probably not needed here, but just to be sure)

      PERFETTO_DEFINE_CATEGORIES_IN_NAMESPACE_WITH_ATTRS(
          v8,
          V8_EXPORT_PRIVATE,
          perfetto::Category("cppgc"),
          perfetto::Category("test"),
      ...

       

      I know, this is 3rd party. Nevertheless it would be nice, to have sources that don't fail building.

      Attachments

        No reviews matched the request. Check your Options in the drop-down menu of this sections header.

        Activity

          People

            qtbuildsystem Qt Build System Team
            daniel_frey Daniel Frey
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:

              Gerrit Reviews

                There are no open Gerrit changes