drgn icon indicating copy to clipboard operation
drgn copied to clipboard

Implement breakpoints and single-stepping of userspace processes

Open bollu opened this issue 2 years ago • 1 comments

Hey, thanks for this really cool library!

I was wondering if drgn plans to support the ability to not just debug programs (a) after-the-fact via a core dump, (b) connect to long-running programs via their PID, but also support GDB/LLDB like use-cases that allows (c) single-stepping through an executable.

It'd be really helpful to have a scriptable, pure python library/REPL to single-step through a program. Is it possible to use drgn for this purpose? If so, pointers on how to do this would be swell. If not, is it possible to extend drgn to support this?

bollu avatar Dec 15 '21 19:12 bollu

This isn't currently supported, but it's definitely planned. The plan is to first add an API to represent threads (#92), which @Svetlitski-FB is currently working on. Once that's done, we can add APIs for attaching to threads, setting breakpoints, and stepping. I don't have an estimate of when that will be done.

osandov avatar Dec 15 '21 20:12 osandov