This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
Re: RFC GDB Linux Awareness analysis
- From: Doug Evans <dje at google dot com>
- To: Peter Griffin <peter dot griffin at linaro dot org>
- Cc: gdb-patches <gdb-patches at sourceware dot org>, lee dot jones at linaro dot org
- Date: Thu, 4 Jun 2015 09:32:37 -0700
- Subject: Re: RFC GDB Linux Awareness analysis
- Authentication-results: sourceware.org; auth=none
- References: <20150603142858 dot GA19370 at griffinp-ThinkPad-X1-Carbon-2nd>
On Wed, Jun 3, 2015 at 7:28 AM, Peter Griffin <peter.griffin@linaro.org> wrote:
> Hi GDB community,
>
> Overview
> ========
>
> The purpose of this email is to describe a useful feature which has been developed
> by STMicroelectronics inside of GDB for debugging Linux kernels. I will cover at
> a high level some of the implementation details and what I see as the advantages
> / disadvantages of the implementation. I will also cover some other alternative
> approaches that I'm aware of.
>
> The purpose is to facilitate discussion with the GDB experts on this
> mailing list as to what the "correct" way to implement this functionality would
> be.
>
> The end goal is to have an upstream implementation of this functionality.
>
> ...
Hi.
>
> Questions
> - Do GDB community mind Linux specific custom commands being added to GDB code base?
In principal, no. But the devil is in the details of course.
gdb already has "info proc foo" to dump bits of /proc.
Plus obviously we encode various linux-specific bits
needed to debug userland apps.
> My current opinion is that helper commands which can be, should be migrated from C code
> into Python, and merged into the kernel source tree (and then retired from the LKD patchset).
I can't speak to what, if anything, "should" live in the kernel tree
(as opposed to somewhere else, but not necessarily in gdb).
Encoding application-specific knowledge in gdb is obviously not ideal,
but then again the kernel is not your average app.
> If you got here, thanks for reading this far! Like I said at the beginning, the purpose of
> this email is to stimulate some discussion on what you folks consider the 'correct' way to
> implement this OS awareness functionality is.
If we can put most/all this in python, awesome.
I wouldn't be opposed to extending gdb's python API to support this
(where appropriate).
Can we proceed by making "do it in python" the default choice,
and then address each issue as needed?