[Lldb-commits] [lldb] [lldb-dap] Mark hidden frames as "subtle" (PR #105457)

Petr Hosek via lldb-commits lldb-commits at lists.llvm.org
Wed Aug 21 14:16:33 PDT 2024


petrhosek wrote:

This `subtleFrames` is failing on our builders, would it be possible to take a look?
```
Script:
--
/b/s/w/ir/x/w/lldb_install/python3/bin/python3 /b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/dotest.py -u CXXFLAGS -u CFLAGS --env ARCHIVER=/b/s/w/ir/x/w/cipd/bin/llvm-ar --env OBJCOPY=/b/s/w/ir/x/w/cipd/bin/llvm-objcopy --env LLVM_LIBS_DIR=/b/s/w/ir/x/w/llvm_build/./lib --env LLVM_INCLUDE_DIR=/b/s/w/ir/x/w/llvm_build/include --env LLVM_TOOLS_DIR=/b/s/w/ir/x/w/llvm_build/./bin --libcxx-include-dir /b/s/w/ir/x/w/llvm_build/include/c++/v1 --libcxx-include-target-dir /b/s/w/ir/x/w/llvm_build/include/x86_64-unknown-linux-gnu/c++/v1 --libcxx-library-dir /b/s/w/ir/x/w/llvm_build/./lib/x86_64-unknown-linux-gnu --arch x86_64 --build-dir /b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex --lldb-module-cache-dir /b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/module-cache-lldb/lldb-api --clang-module-cache-dir /b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/module-cache-clang/lldb-api --executable /b/s/w/ir/x/w/llvm_build/./bin/lldb --compiler /b/s/w/ir/x/w/llvm_build/./bin/clang --dsymutil /b/s/w/ir/x/w/llvm_build/./bin/dsymutil --llvm-tools-dir /b/s/w/ir/x/w/llvm_build/./bin --lldb-obj-root /b/s/w/ir/x/w/llvm_build/tools/lldb --lldb-libs-dir /b/s/w/ir/x/w/llvm_build/./lib --skip-category=pexpect /b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames -p TestDAP_subtleFrames.py
--
Exit Code: 1

Command Output (stdout):
--
lldb version 20.0.0git (https://llvm.googlesource.com/a/llvm-project revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab)
  clang revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab
  llvm revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab
Skipping the following test categories: ['pexpect', 'dsym', 'gmodules', 'debugserver', 'objc']
========= DEBUG ADAPTER PROTOCOL LOGS =========
1724224181.656976938 --> 
Content-Length: 344

{
  "arguments": {
    "adapterID": "lldb-native",
    "clientID": "vscode",
    "columnsStartAt1": true,
    "linesStartAt1": true,
    "locale": "en-us",
    "pathFormat": "path",
    "sourceInitFile": false,
    "supportsRunInTerminalRequest": true,
    "supportsStartDebuggingRequest": true,
    "supportsVariablePaging": true,
    "supportsVariableType": true
  },
  "command": "initialize",
  "seq": 1,
  "type": "request"
}
1724224181.658302069 <-- 
Content-Length: 1487

{
  "body": {
    "__lldb": {
      "version": "lldb version 20.0.0git (https://llvm.googlesource.com/a/llvm-project revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab)\n  clang revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab\n  llvm revision 90556efaa2f5703920cce4a9c0ee36365e15e2ab"
    },
    "completionTriggerCharacters": [
      ".",
      " ",
      "\t"
    ],
    "exceptionBreakpointFilters": [
      {
        "default": false,
        "filter": "cpp_catch",
        "label": "C++ Catch"
      },
      {
        "default": false,
        "filter": "cpp_throw",
        "label": "C++ Throw"
      },
      {
        "default": false,
        "filter": "objc_catch",
        "label": "Objective-C Catch"
      },
      {
        "default": false,
        "filter": "objc_throw",
        "label": "Objective-C Throw"
      }
    ],
    "supportTerminateDebuggee": true,
    "supportsCompletionsRequest": true,
    "supportsConditionalBreakpoints": true,
    "supportsConfigurationDoneRequest": true,
    "supportsDataBreakpoints": true,
    "supportsDelayedStackTraceLoading": true,
    "supportsDisassembleRequest": true,
    "supportsEvaluateForHovers": true,
    "supportsExceptionInfoRequest": true,
    "supportsExceptionOptions": true,
    "supportsFunctionBreakpoints": true,
    "supportsGotoTargetsRequest": false,
    "supportsHitConditionalBreakpoints": true,
    "supportsLoadedSourcesRequest": false,
    "supportsLogPoints": true,
    "supportsModulesRequest": true,
    "supportsProgressReporting": true,
    "supportsRestartFrame": false,
    "supportsRestartRequest": true,
    "supportsRunInTerminalRequest": true,
    "supportsSetVariable": true,
    "supportsStepBack": false,
    "supportsStepInTargetsRequest": true,
    "supportsValueFormattingOptions": true
  },
  "command": "initialize",
  "request_seq": 1,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224181.658623934 --> 
Content-Length: 803

{
  "arguments": {
    "commandEscapePrefix": null,
    "disableASLR": true,
    "enableAutoVariableSummaries": false,
    "enableSyntheticChildDebugging": false,
    "initCommands": [
      "settings clear -all",
      "settings set symbols.enable-external-lookup false",
      "settings set target.inherit-tcc true",
      "settings set target.disable-aslr false",
      "settings set target.detach-on-error false",
      "settings set target.auto-apply-fixits false",
      "settings set plugin.process.gdb-remote.packet-timeout 60",
      "settings set symbols.clang-modules-cache-path \"/b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/module-cache-lldb/lldb-api\"",
      "settings set use-color false"
    ],
    "program": "/b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.test_subtleFrames/a.out"
  },
  "command": "launch",
  "seq": 2,
  "type": "request"
}
1724224181.658786058 <-- 
Content-Length: 622

{
  "body": {
    "category": "console",
    "output": "Running initCommands:\n(lldb) settings clear -all\n(lldb) settings set symbols.enable-external-lookup false\n(lldb) settings set target.inherit-tcc true\n(lldb) settings set target.disable-aslr false\n(lldb) settings set target.detach-on-error false\n(lldb) settings set target.auto-apply-fixits false\n(lldb) settings set plugin.process.gdb-remote.packet-timeout 60\n(lldb) settings set symbols.clang-modules-cache-path \"/b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/module-cache-lldb/lldb-api\"\n(lldb) settings set use-color false\n"
  },
  "event": "output",
  "seq": 0,
  "type": "event"
}
1724224181.759521961 <-- 
Content-Length: 77

{
  "command": "launch",
  "request_seq": 2,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224181.759572983 <-- 
Content-Length: 264

{
  "body": {
    "isLocalProcess": true,
    "name": "/b/s/w/ir/x/w/llvm_build/lldb-test-build.noindex/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.test_subtleFrames/a.out",
    "startMethod": "launch",
    "systemProcessId": 1992002
  },
  "event": "process",
  "seq": 0,
  "type": "event"
}
1724224181.759586096 <-- 
Content-Length: 46

{
  "event": "initialized",
  "seq": 0,
  "type": "event"
}
1724224181.759926081 --> 
Content-Length: 178

{
  "arguments": {
    "breakpoints": [
      {
        "line": 5
      }
    ],
    "lines": "[5]",
    "source": {
      "name": "main.cpp",
      "path": "main.cpp"
    },
    "sourceModified": false
  },
  "command": "setBreakpoints",
  "seq": 3,
  "type": "request"
}
1724224181.762167931 <-- 
Content-Length: 243

{
  "body": {
    "breakpoints": [
      {
        "column": 13,
        "id": 1,
        "instructionReference": "0x555555590C54",
        "line": 6,
        "source": {
          "name": "main.cpp",
          "path": "main.cpp"
        },
        "verified": true
      }
    ]
  },
  "command": "setBreakpoints",
  "request_seq": 3,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224181.762327909 --> 
Content-Length: 71

{
  "arguments": {},
  "command": "configurationDone",
  "seq": 4,
  "type": "request"
}
1724224181.762352943 <-- 
Content-Length: 88

{
  "command": "configurationDone",
  "request_seq": 4,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224181.778428078 <-- 
Content-Length: 222

{
  "body": {
    "allThreadsStopped": true,
    "description": "breakpoint 1.1",
    "hitBreakpointIds": [
      1
    ],
    "preserveFocusHint": false,
    "reason": "breakpoint",
    "threadCausedFocus": true,
    "threadId": 1992002
  },
  "event": "stopped",
  "seq": 0,
  "type": "event"
}
1724224182.028877020 --> 
Content-Length: 61

{
  "arguments": {},
  "command": "threads",
  "seq": 5,
  "type": "request"
}
1724224182.028984070 <-- 
Content-Length: 129

{
  "body": {
    "threads": [
      {
        "id": 1992002,
        "name": "a.out"
      }
    ]
  },
  "command": "threads",
  "request_seq": 5,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224182.029185057 --> 
Content-Length: 82

{
  "arguments": {
    "threadId": 1992002
  },
  "command": "stackTrace",
  "seq": 6,
  "type": "request"
}
1724224182.041152954 <-- 
Content-Length: 2576

{
  "body": {
    "stackFrames": [
      {
        "column": 13,
        "id": 524288,
        "instructionPointerReference": "0x555555590C54",
        "line": 6,
        "name": "greet()",
        "source": {
          "name": "main.cpp",
          "path": "/b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp"
        }
      },
      {
        "column": 25,
        "id": 524289,
        "instructionPointerReference": "0x5555555919B2",
        "line": 149,
        "name": "decltype(std::declval<void (*&)()>()()) std::__2::__invoke[abi:ne200000]<void (*&)()>(void (*&)())",
        "source": {
          "name": "invoke.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__type_traits/invoke.h"
        }
      },
      {
        "column": 5,
        "id": 524290,
        "instructionPointerReference": "0x555555591995",
        "line": 224,
        "name": "void std::__2::__invoke_void_return_wrapper<void, true>::__call[abi:ne200000]<void (*&)()>(void (*&)())",
        "source": {
          "name": "invoke.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__type_traits/invoke.h"
        }
      },
      {
        "column": 12,
        "id": 524291,
        "instructionPointerReference": "0x555555591975",
        "line": 210,
        "name": "std::__2::__function::__default_alloc_func<void (*)(), void ()>::operator()[abi:ne200000]()",
        "source": {
          "name": "function.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__functional/function.h"
        }
      },
      {
        "column": 12,
        "id": 524292,
        "instructionPointerReference": "0x55555559192D",
        "line": 610,
        "name": "void std::__2::__function::__policy_invoker<void ()>::__call_impl[abi:ne200000]<std::__2::__function::__default_alloc_func<void (*)(), void ()>>(std::__2::__function::__policy_storage const*)",
        "source": {
          "name": "function.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__functional/function.h"
        }
      },
      {
        "column": 12,
        "id": 524293,
        "instructionPointerReference": "0x555555591A36",
        "line": 716,
        "name": "std::__2::__function::__policy_func<void ()>::operator()[abi:ne200000]() const",
        "source": {
          "name": "function.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__functional/function.h"
        }
      },
      {
        "column": 10,
        "id": 524294,
        "instructionPointerReference": "0x555555590D65",
        "line": 989,
        "name": "std::__2::function<void ()>::operator()() const",
        "source": {
          "name": "function.h",
          "path": "/b/s/w/ir/x/w/llvm_build/include/c++/v1/__functional/function.h"
        }
      },
      {
        "column": 3,
        "id": 524295,
        "instructionPointerReference": "0x555555590C9C",
        "line": 11,
        "name": "main",
        "source": {
          "name": "main.cpp",
          "path": "/b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp"
        }
      },
      {
        "column": 0,
        "id": 524296,
        "instructionPointerReference": "0x7FFFF7CCFD0A",
        "line": 0,
        "name": "__libc_start_main"
      },
      {
        "column": 0,
        "id": 524297,
        "instructionPointerReference": "0x555555590BBA",
        "line": 0,
        "name": "_start"
      }
    ],
    "totalFrames": 10
  },
  "command": "stackTrace",
  "request_seq": 6,
  "seq": 0,
  "success": true,
  "type": "response"
}
1724224182.046401024 --> 
Content-Length: 88

{
  "arguments": {
    "terminateDebuggee": true
  },
  "command": "disconnect",
  "seq": 7,
  "type": "request"
}
1724224182.047291040 <-- 
Content-Length: 143

{
  "body": {
    "category": "console",
    "output": "Process 1992002 exited with status = 9 (0x00000009) killed\n"
  },
  "event": "output",
  "seq": 0,
  "type": "event"
}
1724224182.047465086 <-- 
Content-Length: 63

{
  "body": {
    "exitCode": 9
  },
  "event": "exited",
  "seq": 0,
  "type": "event"
}
1724224182.048485041 <-- 
Content-Length: 3390

{
  "event": "terminated",
  "seq": 0,
  "statistics": {
    "commands": "{\"settings clear\":1}",
    "memory": "{\"strings\":{\"bytesTotal\":1802240,\"bytesUnused\":861984,\"bytesUsed\":940256}}",
    "targets": "[{\"breakpoints\":[{\"details\":{\"Breakpoint\":{\"BKPTOptions\":{\"AutoContinue\":false,\"ConditionText\":\"\",\"EnabledState\":true,\"IgnoreCount\":0,\"OneShotState\":false},\"BKPTResolver\":{\"Options\":{\"Column\":0,\"Exact\":false,\"FileName\":\"/b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/main.cpp\",\"Inlines\":true,\"LineNumber\":5,\"Offset\":0,\"SkipPrologue\":true},\"Type\":\"FileAndLine\"},\"Hardware\":false,\"Names\":[\"dap\"],\"SearchFilter\":{\"Options\":{},\"Type\":\"Unconstrained\"}}},\"hitCount\":1,\"id\":1,\"internal\":false,\"numLocations\":1,\"numResolvedLocations\":1,\"resolveTime\":0.0021589999999999999},{\"details\":{\"Breakpoint\":{\"BKPTOptions\":{\"AutoContinue\":false,\"ConditionText\":\"\",\"EnabledState\":true,\"IgnoreCount\":0,\"OneShotState\":false},\"BKPTResolver\":{\"Options\":{\"Language\":\"c\",\"NameMask\":[4,4,4,4,4,4],\"Offset\":0,\"SkipPrologue\":false,\"SymbolNames\":[\"_dl_debug_state\",\"rtld_db_dlactivity\",\"__dl_rtld_db_dlactivity\",\"r_debug_state\",\"_r_debug_state\",\"_rtld_debug_state\"]},\"Type\":\"SymbolName\"},\"Hardware\":false,\"SearchFilter\":{\"Options\":{\"ModuleList\":[\"/usr/lib/x86_64-linux-gnu/ld-2.31.so\"]},\"Type\":\"Modules\"}}},\"hitCount\":2,\"id\":-1,\"internal\":true,\"kindDescription\":\"shared-library-event\",\"numLocations\":1,\"numResolvedLocations\":1,\"resolveTime\":8.2999999999999998e-05},{\"details\":{\"Breakpoint\":{\"BKPTOptions\":{\"AutoContinue\":false,\"ConditionText\":\"\",\"EnabledState\":false,\"IgnoreCount\":0,\"OneShotState\":false},\"BKPTResolver\":{\"Options\":{\"NameMask\":[8,8,8],\"Offset\":0,\"SkipPrologue\":false,\"SymbolNames\":[\"__cxa_throw\",\"__cxa_rethrow\",\"__cxa_allocate_exception\"]},\"Type\":\"SymbolName\"},\"Hardware\":false,\"SearchFilter\":{\"Options\":{},\"Type\":\"Unconstrained\"}}},\"hitCount\":0,\"id\":-2,\"internal\":true,\"kindDescription\":\"c++ exception\",\"numLocations\":3,\"numResolvedLocations\":0,\"resolveTime\":0.0010009999999999999}],\"dyldPluginName\":\"posix-dyld\",\"expressionEvaluation\":{\"failures\":0,\"successes\":0},\"firstStopTime\":0.070622097999999994,\"frameVariable\":{\"failures\":0,\"successes\":0},\"launchOrAttachTime\":0.068839758000000001,\"moduleIdentifiers\":[94491162046728,94491162211880,94491163171072,139883930790776,139883930984440,139883931597704,139883932037112,94491162965600],\"signals\":[{\"SIGSTOP\":1}],\"sourceMapDeduceCount\":0,\"sourceRealpathAttemptCount\":0,\"sourceRealpathCompatibleCount\":0,\"stopCount\":8,\"targetCreateTime\":0.000108,\"totalBreakpointResolveTime\":0.0032430000000000002,\"totalSharedLibraryEventHitCount\":2}]",
    "totalDebugInfoByteSize": 3311645,
    "totalDebugInfoEnabled": 2,
    "totalDebugInfoIndexLoadedFromCache": 0,
    "totalDebugInfoIndexSavedToCache": 0,
    "totalDebugInfoIndexTime": 0.023809,
    "totalDebugInfoParseTime": 0.029825000000000001,
    "totalModuleCount": 8,
    "totalModuleCountHasDebugInfo": 2,
    "totalModuleCountWithIncompleteTypes": 0,
    "totalModuleCountWithVariableErrors": 0,
    "totalSymbolTableIndexTime": 0.003032,
    "totalSymbolTableParseTime": 0.011505,
    "totalSymbolTableStripped": 0,
    "totalSymbolTablesLoadedFromCache": 0,
    "totalSymbolTablesSavedToCache": 0
  },
  "type": "event"
}
1724224182.048582077 <-- 
Content-Length: 81

{
  "command": "disconnect",
  "request_seq": 7,
  "seq": 0,
  "success": true,
  "type": "response"
}

========= END =========

--
Command Output (stderr):
--
FAIL: LLDB (/b/s/w/ir/x/w/llvm_build/bin/clang-x86_64) :: test_subtleFrames (TestDAP_subtleFrames.TestDAP_subtleFrames.test_subtleFrames)
======================================================================
ERROR: test_subtleFrames (TestDAP_subtleFrames.TestDAP_subtleFrames.test_subtleFrames)
   Internal stack frames (such as the ones used by `std::function`) are marked as "subtle".
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/b/s/w/ir/x/w/llvm-llvm-project/lldb/test/API/tools/lldb-dap/stackTrace/subtleFrames/TestDAP_subtleFrames.py", line 28, in test_subtleFrames
    self.assertEqual(f["presentationHint"], "subtle")
                     ~^^^^^^^^^^^^^^^^^^^^
KeyError: 'presentationHint'
Config=x86_64-/b/s/w/ir/x/w/llvm_build/bin/clang
----------------------------------------------------------------------
Ran 1 test in 1.414s

FAILED (errors=1)

--
```

https://github.com/llvm/llvm-project/pull/105457


More information about the lldb-commits mailing list