• Type: Icon: Bug Bug
    • Resolution: Unresolved
    • Priority: Icon: Major - P3 Major - P3
    • None
    • Affects Version/s: None
    • Component/s: None
    • None
    • Workload Scheduling
    • ALL
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      On the v5 toolchain, protoc trips UBSAN due to a pointer misalignment. Example output below.

      ERROR: /data/mci/4d4f87c5f05eaf3cce0911674b61a66e/src/src/mongo/transport/grpc/BUILD.bazel:144:22: Action src/mongo/transport/grpc/core_test.grpc.pb.h failed: (Exit 1): protoc failed: error executing Action command (from target //src/mongo/transport/grpc:_core_test_cc_grpc_grpc_codegen) bazel-out/k8-opt-exec-ST-e0dba4dfc6c2/bin/external/protobuf~/protoc '--plugin=protoc-gen-PLUGIN=bazel-out/k8-opt-exec-ST-e0dba4dfc6c2/bin/src/third_party/grpc/grpc_cpp_plugin' ... (remaining 4 arguments skipped)
      src/third_party/gperftools/dist/src/base/basictypes.h:247:10: runtime error: store to misaligned address 0x7f30e2149134 for type 'unsigned long *', which requires 8 byte alignment
      0x7f30e2149134: note: pointer points here
         00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  90 91 14 e2 30 7f 00 00  00 00 00 00 00 00 00 00
                    ^
      SUMMARY: UndefinedBehaviorSanitizer: undefined-behavior src/third_party/gperftools/dist/src/base/basictypes.h:247:10
      

      The misalignment occurs in code whose purpose is explicitly documented as the prevention of misalignment. Remove the temporary suppression from etc/ubsan.denylist added in SERVER-101790 and fix the underlying issue. We will probably need to upgrade the third party libraries involved here (gperftools, maybe protobuf, maybe abseil) to reach a permanent resolution.

            Assignee:
            Unassigned Unassigned
            Reporter:
            james.bronsted@mongodb.com James Bronsted
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

              Created:
              Updated:
              None
              None
              None
              None