Re: [lldb-dev] Help fixing deadlock in DWARF symbol preloading

2021-02-04 Thread Raphael Isemann via lldb-dev
We could also just give the Module a std::string with the description and update it in the few places where we actually update it. The m_arch already has a setter in place that just needs to be used in a few more places, so the infrastructure is kind of already there (at least for m_arch). The desc

Re: [lldb-dev] Help fixing deadlock in DWARF symbol preloading

2021-02-04 Thread Jorge Gorbe Moya via lldb-dev
Wouldn't it be preferable to try_lock in GetDescription (which is the one currently acquiring the mutex) instead? ReportError doesn't touch any mutex itself and will happily report the rest of the error if GetDescription bails out. For the test case I sent it would look like this: error: {0x0

[lldb-dev] [Bug 49046] New: Building lldb-vscode for windows is broken on 12.x

2021-02-04 Thread via lldb-dev
https://bugs.llvm.org/show_bug.cgi?id=49046 Bug ID: 49046 Summary: Building lldb-vscode for windows is broken on 12.x Product: lldb Version: 10.0 Hardware: PC OS: All Status: NEW Severity: enhancement

Re: [lldb-dev] Help fixing deadlock in DWARF symbol preloading

2021-02-04 Thread Pavel Labath via lldb-dev
Please have a look at , which is the last time this came up. One quick'n'dirty solution would be to have `Module::ReportError` _try_ to get the module lock, and if it fails, just bail out. That obviously means you won't get

[lldb-dev] Help fixing deadlock in DWARF symbol preloading

2021-02-04 Thread Jorge Gorbe Moya via lldb-dev
Hi, I've found a deadlock in lldb (see attached test case, you can build it with just `clang -o test test.s`), but I'm a total newbie and I have no idea what's the right way to fix it. The problem happens when an error is found during DIE extraction when preloading symbols. As far as I can tell,