lemo (Leonard Mosescu)
User

Projects

User does not belong to any projects.

User Details

User Since
Sep 6 2017, 12:48 PM (54 w, 6 d)

Recent Activity

Thu, Sep 20

lemo added a comment to D50365: Add a new tool named "lldb-vscode" that implements the Visual Studio Code Debug Adaptor Protocol.

Hi Greg, looking at request_evaluate() I noticed that it will evaluate the
string as a lldb command if prefixed by ` .

Thu, Sep 20, 3:05 PM

Tue, Sep 4

lemo added inline comments to D51604: Terminate debugger if an assert was hit.
Tue, Sep 4, 9:09 AM

Wed, Aug 29

lemo accepted D51442: Don't include the Age in the UUID for CvRecordPdb70 UUID records in minidump files.

Looks good (with one inline request for a comment)

Wed, Aug 29, 12:12 PM
lemo updated subscribers of D51442: Don't include the Age in the UUID for CvRecordPdb70 UUID records in minidump files.

I'm curious too: where did the PDB70 age create matching problems?

Wed, Aug 29, 10:47 AM

Aug 23 2018

lemo committed rL340578: Restrict the set of plugins used for ProcessMinidump.
Restrict the set of plugins used for ProcessMinidump
Aug 23 2018, 2:35 PM
lemo committed rLLDB340578: Restrict the set of plugins used for ProcessMinidump.
Restrict the set of plugins used for ProcessMinidump
Aug 23 2018, 2:35 PM
lemo closed D51176: Restrict the set of plugins used for ProcessMinidump.
Aug 23 2018, 2:35 PM · Restricted Project
lemo added a comment to D51176: Restrict the set of plugins used for ProcessMinidump.

The other option would be to move the code that populates the section load list into the mini dump dynamic loader. That has the benefit of keeping this consistent with the other process plugins, but OTOH is just moving code around...

Aug 23 2018, 2:32 PM · Restricted Project
lemo updated the diff for D51176: Restrict the set of plugins used for ProcessMinidump.

Added the comment requested by zturner

Aug 23 2018, 2:31 PM · Restricted Project
lemo updated the summary of D51176: Restrict the set of plugins used for ProcessMinidump.
Aug 23 2018, 1:38 PM · Restricted Project
lemo updated subscribers of D51176: Restrict the set of plugins used for ProcessMinidump.

It's an interesting idea, thanks! I don't object moving code around if
there's a strong case for it, but I'd like to keep the fix small and simple
for now, but it's worth considering if the current minidump loading path
will need more flexibility.

Aug 23 2018, 1:36 PM · Restricted Project
lemo added a comment to D51176: Restrict the set of plugins used for ProcessMinidump.

So this might actually work. Take a look around and see what else the dynamic loader is used for and make sure that they won't be needed for anything else. If not, this fix should work, but we should document it.

Aug 23 2018, 1:07 PM · Restricted Project
lemo added a comment to D51176: Restrict the set of plugins used for ProcessMinidump.

Dynamic loaders will fill out the section load list in the target that saids "__TEXT" from "/tmp/a.out" was loaded at address 0x1000020200. So yes they are needed. If the process minidump is manually setting the section load list itself, then there really is no need for a dynamic loader and this fix might work.

Aug 23 2018, 11:40 AM · Restricted Project
lemo added a comment to D51176: Restrict the set of plugins used for ProcessMinidump.

That's not changing the module list, that's changing the loaded section information. It is the dynamic loader's job to figure out what got loaded where, plus your stack trace show this happening after we've selected a plugin, not in the process of negotiating for the plugin. Clearing the section load list before setting to work seems like an appropriate thing for a selected plugin to do.

Aug 23 2018, 11:37 AM · Restricted Project
lemo added a comment to D51176: Restrict the set of plugins used for ProcessMinidump.

Dynamic loaders are needed for loading breakpad minidumps that are for MacOSX and iOS processes. They should also be needed for loading any minidumps that have stack traces.

Aug 23 2018, 11:17 AM · Restricted Project
lemo created D51176: Restrict the set of plugins used for ProcessMinidump.
Aug 23 2018, 10:58 AM · Restricted Project

Aug 22 2018

lemo abandoned D48381: WIP: arbitrary-size UUIDs.
Aug 22 2018, 2:20 PM

Aug 8 2018

lemo updated subscribers of D50365: Add a new tool named "lldb-vscode" that implements the Visual Studio Code Debug Adaptor Protocol.

The LLDB MI plugin didn't work very well as was quite flaky when I tested
it a while back.

Aug 8 2018, 5:52 PM

Aug 7 2018

lemo committed rLLDB339161: Misc module/dwarf logging improvements.
Misc module/dwarf logging improvements
Aug 7 2018, 11:01 AM
lemo committed rL339161: Misc module/dwarf logging improvements.
Misc module/dwarf logging improvements
Aug 7 2018, 11:01 AM
lemo closed D50274: Misc module/dwarf logging improvements.
Aug 7 2018, 11:01 AM · Restricted Project
lemo updated subscribers of D50365: Add a new tool named "lldb-vscode" that implements the Visual Studio Code Debug Adaptor Protocol.

Really cool! Are you planning to add some documentation for it? (set up
instructions, etc...)

Aug 7 2018, 9:53 AM

Aug 6 2018

lemo added inline comments to D50274: Misc module/dwarf logging improvements.
Aug 6 2018, 4:45 PM · Restricted Project
lemo updated the diff for D50274: Misc module/dwarf logging improvements.

Updated the LIT file too

Aug 6 2018, 4:45 PM · Restricted Project
lemo added inline comments to D50274: Misc module/dwarf logging improvements.
Aug 6 2018, 1:34 PM · Restricted Project
lemo added inline comments to D50274: Misc module/dwarf logging improvements.
Aug 6 2018, 12:50 PM · Restricted Project
lemo updated the diff for D50274: Misc module/dwarf logging improvements.

Incorporating feedback, thanks.

Aug 6 2018, 12:48 PM · Restricted Project

Aug 3 2018

lemo committed rLLDB338949: Fix a bug in VMRange.
Fix a bug in VMRange
Aug 3 2018, 7:16 PM
lemo committed rL338949: Fix a bug in VMRange.
Fix a bug in VMRange
Aug 3 2018, 7:16 PM
This revision was not accepted when it landed; it landed in state Needs Review.
Aug 3 2018, 7:16 PM · Restricted Project
lemo updated subscribers of D50290: Fix a bug in VMRange.

Thanks Zach. I can't find llvm::contains() though, any pointers to it?

Aug 3 2018, 6:23 PM · Restricted Project
lemo updated subscribers of D49415: Add unit tests for VMRange.

The new test cases did catch a real bug:

Aug 3 2018, 5:51 PM
lemo created D50290: Fix a bug in VMRange.
Aug 3 2018, 5:49 PM · Restricted Project
lemo created D50274: Misc module/dwarf logging improvements.
Aug 3 2018, 3:11 PM · Restricted Project

Jul 31 2018

lemo added a comment to D49750: Add support for ARM and ARM64 breakpad generated minidump files..

Thanks Greg, looks good to me (a couple of inline comments left at your discretion)

Jul 31 2018, 11:29 AM

Jul 30 2018

lemo updated subscribers of D49750: Add support for ARM and ARM64 breakpad generated minidump files..

FYI, Breakpad & Crashpad will start generating the Microsoft flavor of ARM
minidumps soon.

Jul 30 2018, 12:18 PM

Jul 27 2018

lemo added a comment to D49685: LLDB does not respect platform sysroot when loading core on Linux.

I never *ran LLDB tests*, not sure where they are and what they are.

Jul 27 2018, 11:35 AM

Jul 25 2018

lemo added inline comments to D49750: Add support for ARM and ARM64 breakpad generated minidump files..
Jul 25 2018, 9:44 AM

Jul 24 2018

lemo added inline comments to D49750: Add support for ARM and ARM64 breakpad generated minidump files..
Jul 24 2018, 4:06 PM
lemo added a comment to D49750: Add support for ARM and ARM64 breakpad generated minidump files..

Looks really good, a few comments inline.

Jul 24 2018, 3:17 PM
lemo updated subscribers of D49685: LLDB does not respect platform sysroot when loading core on Linux.

The problem is that shared libraries differ on these machines and
LLDB either fails to load some libraries *or loads wrong ones*.

Jul 24 2018, 9:17 AM

Jul 17 2018

lemo added a comment to D49202: Restructure the minidump loading path and add early & explicit consistency checks.

Great timing! ARM support would be most welcome. Are you planning to
support the Breakpad flavor or ARM minidumps or the Microsoft one? (Mark
Mentovai just reminded me that the ARM support was added independently and
some of the structures are different)

Jul 17 2018, 11:16 AM · Restricted Project

Jul 16 2018

lemo updated subscribers of D49202: Restructure the minidump loading path and add early & explicit consistency checks.

The problem is not returning an error from Minidump::Create() - if that was
the case this could easily be improved indeed. The two-phase initialization
is a consequence of the LLDB plugin lookup:

Jul 16 2018, 10:16 AM · Restricted Project

Jul 12 2018

lemo committed rL336918: Restructure the minidump loading path and add early & explicit consistency….
Restructure the minidump loading path and add early & explicit consistency…
Jul 12 2018, 10:32 AM
lemo closed D49202: Restructure the minidump loading path and add early & explicit consistency checks.
Jul 12 2018, 10:32 AM · Restricted Project
lemo added a comment to D49202: Restructure the minidump loading path and add early & explicit consistency checks.

Thanks Adrian for the thorough review.

Jul 12 2018, 9:47 AM · Restricted Project

Jul 11 2018

lemo updated the diff for D49202: Restructure the minidump loading path and add early & explicit consistency checks.
Jul 11 2018, 4:16 PM · Restricted Project
lemo updated the diff for D49202: Restructure the minidump loading path and add early & explicit consistency checks.

Adding a few ill-formed minidumps for testing the new checks

Jul 11 2018, 3:57 PM · Restricted Project
lemo added a comment to D49202: Restructure the minidump loading path and add early & explicit consistency checks.

Regarding test for the other checks, I'll try to fabricate a few invalid minidumps (although it would obviously provide limited coverage)

Jul 11 2018, 3:33 PM · Restricted Project
lemo added inline comments to D49202: Restructure the minidump loading path and add early & explicit consistency checks.
Jul 11 2018, 2:55 PM · Restricted Project
lemo updated the diff for D49202: Restructure the minidump loading path and add early & explicit consistency checks.

Incorporating CR feedback

Jul 11 2018, 2:55 PM · Restricted Project
lemo created D49202: Restructure the minidump loading path and add early & explicit consistency checks.
Jul 11 2018, 1:03 PM · Restricted Project

Jun 22 2018

lemo added a comment to D48479: Represent invalid UUIDs as UUIDs with length zero.

I'm not sure if there is a suitable place for that function. This is
needed in "ObjectFileMachO" and two dynamic loader plugins.

Jun 22 2018, 12:54 PM
lemo updated subscribers of D48479: Represent invalid UUIDs as UUIDs with length zero.

However, during parsing you need to know the meaning of a "0000...0" UUID.
In a MachO file (at least based on the comments in the code) this value is
used to denote the fact that the object file has no UUID. For elf, a
"000..0" build-id is a perfectly valid identifier (and the lack of a
build-id is denoted by the absence of the build-id section). The extra
constructor argument is my way of trying to support both scenarios. The
other possibility I see is to have a some kind of a factory function for
one of the options (or both). I don't really have a preference between the
two.

Jun 22 2018, 12:19 PM
lemo added a comment to D48479: Represent invalid UUIDs as UUIDs with length zero.

The slight complication here is that
some clients (MachO) actually use the all-zero notation to mean "no UUID
has been set". To keep this use case working, I have introduced an
additional argument to the UUID constructor, which specifies whether an
all-zero vector should be considered a valid UUID. For the usages where
the UUID data comes from a MachO file, I set this argument to false.

Jun 22 2018, 10:52 AM

Jun 20 2018

lemo created D48381: WIP: arbitrary-size UUIDs.
Jun 20 2018, 10:56 AM

Jun 13 2018

lemo added a comment to D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.

The intention in the scope of this change is just to check that the new
overload is exposed correctly through the Python API.

Jun 13 2018, 10:40 AM

Jun 11 2018

lemo updated subscribers of D47991: Improve SBThread's stepping API using SBError parameter..

Ah I see. That's because the last argument is a C++ default argument. It
looks like the convention in this file is that the error argument should be
the last non-defaulted argument.

Jun 11 2018, 7:36 PM
lemo committed rL334439: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.
Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails
Jun 11 2018, 2:24 PM
lemo closed D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.
Jun 11 2018, 2:23 PM
lemo added a comment to D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.

spaces removed :)

Jun 11 2018, 2:19 PM
lemo updated the diff for D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.
Jun 11 2018, 2:19 PM
lemo updated the diff for D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.
Jun 11 2018, 2:18 PM
lemo updated subscribers of D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.

remove space before (

Jun 11 2018, 2:01 PM
lemo updated the diff for D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.

Adding test cases for the new overload.

Jun 11 2018, 1:39 PM
lemo created D48049: Add a new SBTarget::LoadCore() overload which surfaces errors if the load fails.
Jun 11 2018, 1:26 PM
lemo added inline comments to D47991: Improve SBThread's stepping API using SBError parameter..
Jun 11 2018, 10:31 AM

Jun 8 2018

lemo added a comment to D47708: PDB support of function-level linking and splitted functions.

I agree, checked in binaries are not always pretty. But some coverage
depends checked in binaries (or at very least is dramatically harder to get
the same thing from source)

Jun 8 2018, 10:10 AM
lemo updated subscribers of D47708: PDB support of function-level linking and splitted functions.

Doesn't the LIT based test drop the split-function case (originally
produced with PGO)?

Jun 8 2018, 10:03 AM

May 2 2018

lemo committed rL331394: Use the UUID from the minidump's CodeView Record for placeholder modules.
Use the UUID from the minidump's CodeView Record for placeholder modules
May 2 2018, 1:10 PM
lemo closed D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
May 2 2018, 1:09 PM · Restricted Project
lemo added inline comments to D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
May 2 2018, 10:18 AM · Restricted Project

May 1 2018

lemo updated the diff for D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
May 1 2018, 2:36 PM · Restricted Project
lemo added inline comments to D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
May 1 2018, 2:36 PM · Restricted Project
lemo added a comment to D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.

Thanks for the feedback. I uploaded a new revision (incorporating some of the feedback, including an ELF test case)

May 1 2018, 11:01 AM · Restricted Project
lemo updated the diff for D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
May 1 2018, 11:00 AM · Restricted Project

Apr 30 2018

lemo created D46292: Use the UUID from the minidump's CodeView Record for placeholder modules.
Apr 30 2018, 3:25 PM · Restricted Project

Apr 24 2018

lemo updated subscribers of D45628: [LLDB] Support GNU-style compressed debug sections (.zdebug).

Hi Erik, the review is still marked as requiring changes. Once that is
sorted out I'd be happy to submit this on your behalf (what is the base SVN
revision for the latest patch?)

Apr 24 2018, 2:46 PM · Restricted Project

Apr 19 2018

lemo updated subscribers of D45700: Improve LLDB's handling of non-local minidumps.

It looks like nobody except me is worried about the
module-without-an-object-file situation, so I guess we can try this out and
see how it goes.

Apr 19 2018, 9:55 AM · Restricted Project

Apr 18 2018

lemo committed rL330302: Improve LLDB's handling of non-local minidumps.
Improve LLDB's handling of non-local minidumps
Apr 18 2018, 4:14 PM
lemo closed D45700: Improve LLDB's handling of non-local minidumps.
Apr 18 2018, 4:14 PM · Restricted Project
lemo updated subscribers of D45700: Improve LLDB's handling of non-local minidumps.

Greg/Pavel, does the latest revision look good to you? Thanks!

Apr 18 2018, 1:10 PM · Restricted Project
lemo added a comment to D45700: Improve LLDB's handling of non-local minidumps.

LGTM, but consider highlighting the side effect to target when the factory makes a Placeholder module.

Apr 18 2018, 10:31 AM · Restricted Project
lemo updated the diff for D45700: Improve LLDB's handling of non-local minidumps.
Apr 18 2018, 10:27 AM · Restricted Project

Apr 17 2018

lemo added inline comments to D45700: Improve LLDB's handling of non-local minidumps.
Apr 17 2018, 12:09 PM · Restricted Project
lemo added inline comments to D45700: Improve LLDB's handling of non-local minidumps.
Apr 17 2018, 10:55 AM · Restricted Project
lemo updated the diff for D45700: Improve LLDB's handling of non-local minidumps.

Thanks for the feedback.

Apr 17 2018, 10:44 AM · Restricted Project

Apr 16 2018

lemo updated the diff for D45700: Improve LLDB's handling of non-local minidumps.
Apr 16 2018, 3:13 PM · Restricted Project
lemo added inline comments to D45700: Improve LLDB's handling of non-local minidumps.
Apr 16 2018, 3:05 PM · Restricted Project
lemo updated the summary of D45700: Improve LLDB's handling of non-local minidumps.
Apr 16 2018, 2:17 PM · Restricted Project
lemo created D45700: Improve LLDB's handling of non-local minidumps.
Apr 16 2018, 2:15 PM · Restricted Project

Oct 23 2017

lemo added inline comments to D39199: [lldbtests] Handle errors instead of crashing.
Oct 23 2017, 11:53 AM

Oct 5 2017

lemo committed rL315037: Implement interactive command interruption.
Implement interactive command interruption
Oct 5 2017, 4:43 PM
lemo closed D37923: Implement interactive command interruption by committing rL315037: Implement interactive command interruption.
Oct 5 2017, 4:43 PM
lemo requested review of D37923: Implement interactive command interruption.
Oct 5 2017, 2:53 PM
lemo reopened D37923: Implement interactive command interruption.
Oct 5 2017, 2:53 PM
lemo updated the diff for D37923: Implement interactive command interruption.

Updating the original changes to handle reentrant calls to CommandInterpreter::IOHandlerInputComplete().

Oct 5 2017, 2:49 PM

Oct 4 2017

lemo committed rL314929: LLDB cmake fix: define LLDB_CONFIGURATION_xxx based on the build type.
LLDB cmake fix: define LLDB_CONFIGURATION_xxx based on the build type
Oct 4 2017, 1:25 PM
lemo closed D38552: LLDB cmake fix: define LLDB_CONFIGURATION_xxx based on the build type by committing rL314929: LLDB cmake fix: define LLDB_CONFIGURATION_xxx based on the build type.
Oct 4 2017, 1:25 PM
lemo updated the diff for D38552: LLDB cmake fix: define LLDB_CONFIGURATION_xxx based on the build type.

Changed how CMAKE_BUILD_TYPE is tested to ensure we default to LLDB_CONFIGURATION_DEBUG.

Oct 4 2017, 11:15 AM