From: Jan Kiszka <jan.kiszka@Siemens.com>
To: Andrew Morton <akpm@linux-foundation.org>, linux-kernel@vger.kernel.org
Cc: Jason Wessel <jason.wessel@windriver.com>,
kgdb-bugreport@lists.sourceforge.net,
Andi Kleen <andi@firstfloor.org>, Tom Tromey <tromey@redhat.com>,
Ben Widawsky <ben@bwidawsk.net>, Borislav Petkov <bp@suse.de>,
Tatiana Al-Chueyr Martins <tatiana.alchueyr@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Fenghua Yu <fenghua.yu@intel.com>, Kay Sievers <kay@vrfy.org>,
linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-kbuild@vger.kernel.org, Michal Marek <mmarek@suse.cz>,
Rob Landley <rob@landley.net>,
sparclinux@vger.kernel.org, Tony Luck <tony.luck@intel.com>
Subject: [PATCH v6 00/21] Add gdb python scripts as kernel debugging helpers
Date: Mon, 28 Oct 2013 08:58:37 +0000 [thread overview]
Message-ID: <cover.1382950737.git.jan.kiszka@siemens.com> (raw)
It's been a while since my last update of these patches. This one is
mostly about cleaning up and making some details more convenient:
- proper registration of module data segments to access module
variables - this obsoletes lx_modvar again
- stable breakpoint target on do_init_module in order to track module
loading more reliably from the debugger
- internal refactoring with the aim to "pythonize" the scripts (credits
for all valuable suggestions belong to Tatiana, many thanks, for
improper implementations to me)
See http://lkml.indiana.edu/hypermail/linux/kernel/1210.0/01598.html for
the original description and
git://git.kiszka.org/linux.git queues/gdb-scripts
for the latest version.
Jan
CC: "David S. Miller" <davem@davemloft.net>
CC: Fenghua Yu <fenghua.yu@intel.com>
CC: Kay Sievers <kay@vrfy.org>
CC: linux-doc@vger.kernel.org
CC: linux-ia64@vger.kernel.org
CC: linux-kbuild@vger.kernel.org
CC: Michal Marek <mmarek@suse.cz>
CC: Rob Landley <rob@landley.net>
CC: sparclinux@vger.kernel.org
CC: Tony Luck <tony.luck@intel.com>
Jan Kiszka (21):
scripts/gdb: Add infrastructure
scripts/gdb: Add cache for type objects
scripts/gdb: Add container_of helper and convenience function
scripts/gdb: Add module iteration class
scripts/gdb: Add lx-symbols command
module: Do not inline do_init_module
scripts/gdb: Add automatic symbol reloading on module insertion
scripts/gdb: Add internal helper and convenience function to look up a
module
scripts/gdb: Add get_target_endianness helper
scripts/gdb: Add read_u16/32/64 helpers
scripts/gdb: Add lx-dmesg command
scripts/gdb: Add task iteration class
scripts/gdb: Add helper and convenience function to look up tasks
scripts/gdb: Add is_target_arch helper
scripts/gdb: Add internal helper and convenience function to retrieve
thread_info
scripts/gdb: Add get_gdbserver_type helper
scripts/gdb: Add internal helper and convenience function for per-cpu
lookup
scripts/gdb: Add lx_current convenience function
scripts/gdb: Add class to iterate over CPU masks
scripts/gdb: Add lx-lsmod command
scripts/gdb: Add basic documentation
Documentation/gdb-kernel-debugging.txt | 159 +++++++++++++++++++++++++++++++
Makefile | 5 +-
kernel/module.c | 9 +-
scripts/Makefile | 3 +-
scripts/gdb/Makefile | 11 +++
scripts/gdb/linux/Makefile | 9 ++
scripts/gdb/linux/__init__.py | 0
scripts/gdb/linux/cpus.py | 139 +++++++++++++++++++++++++++
scripts/gdb/linux/dmesg.py | 64 +++++++++++++
scripts/gdb/linux/modules.py | 111 ++++++++++++++++++++++
scripts/gdb/linux/symbols.py | 166 +++++++++++++++++++++++++++++++++
scripts/gdb/linux/tasks.py | 108 +++++++++++++++++++++
scripts/gdb/linux/utils.py | 156 +++++++++++++++++++++++++++++++
scripts/gdb/vmlinux-gdb.py | 30 ++++++
14 files changed, 966 insertions(+), 4 deletions(-)
create mode 100644 Documentation/gdb-kernel-debugging.txt
create mode 100644 scripts/gdb/Makefile
create mode 100644 scripts/gdb/linux/Makefile
create mode 100644 scripts/gdb/linux/__init__.py
create mode 100644 scripts/gdb/linux/cpus.py
create mode 100644 scripts/gdb/linux/dmesg.py
create mode 100644 scripts/gdb/linux/modules.py
create mode 100644 scripts/gdb/linux/symbols.py
create mode 100644 scripts/gdb/linux/tasks.py
create mode 100644 scripts/gdb/linux/utils.py
create mode 100644 scripts/gdb/vmlinux-gdb.py
--
1.8.1.1.298.ge7eed54
WARNING: multiple messages have this Message-ID (diff)
From: Jan Kiszka <jan.kiszka@Siemens.com>
To: Andrew Morton <akpm@linux-foundation.org>, linux-kernel@vger.kernel.org
Cc: Jason Wessel <jason.wessel@windriver.com>,
kgdb-bugreport@lists.sourceforge.net,
Andi Kleen <andi@firstfloor.org>, Tom Tromey <tromey@redhat.com>,
Ben Widawsky <ben@bwidawsk.net>, Borislav Petkov <bp@suse.de>,
Tatiana Al-Chueyr Martins <tatiana.alchueyr@gmail.com>,
"David S. Miller" <davem@davemloft.net>,
Fenghua Yu <fenghua.yu@intel.com>, Kay Sievers <kay@vrfy.org>,
linux-doc@vger.kernel.org, linux-ia64@vger.kernel.org,
linux-kbuild@vger.kernel.org, Michal Marek <mmarek@suse.cz>,
Rob Landley <rob@landley.net>,
sparclinux@vger.kernel.org, Tony Luck <tony.luck@intel.com>
Subject: [PATCH v6 00/21] Add gdb python scripts as kernel debugging helpers
Date: Mon, 28 Oct 2013 09:58:37 +0100 [thread overview]
Message-ID: <cover.1382950737.git.jan.kiszka@siemens.com> (raw)
It's been a while since my last update of these patches. This one is
mostly about cleaning up and making some details more convenient:
- proper registration of module data segments to access module
variables - this obsoletes lx_modvar again
- stable breakpoint target on do_init_module in order to track module
loading more reliably from the debugger
- internal refactoring with the aim to "pythonize" the scripts (credits
for all valuable suggestions belong to Tatiana, many thanks, for
improper implementations to me)
See http://lkml.indiana.edu/hypermail/linux/kernel/1210.0/01598.html for
the original description and
git://git.kiszka.org/linux.git queues/gdb-scripts
for the latest version.
Jan
CC: "David S. Miller" <davem@davemloft.net>
CC: Fenghua Yu <fenghua.yu@intel.com>
CC: Kay Sievers <kay@vrfy.org>
CC: linux-doc@vger.kernel.org
CC: linux-ia64@vger.kernel.org
CC: linux-kbuild@vger.kernel.org
CC: Michal Marek <mmarek@suse.cz>
CC: Rob Landley <rob@landley.net>
CC: sparclinux@vger.kernel.org
CC: Tony Luck <tony.luck@intel.com>
Jan Kiszka (21):
scripts/gdb: Add infrastructure
scripts/gdb: Add cache for type objects
scripts/gdb: Add container_of helper and convenience function
scripts/gdb: Add module iteration class
scripts/gdb: Add lx-symbols command
module: Do not inline do_init_module
scripts/gdb: Add automatic symbol reloading on module insertion
scripts/gdb: Add internal helper and convenience function to look up a
module
scripts/gdb: Add get_target_endianness helper
scripts/gdb: Add read_u16/32/64 helpers
scripts/gdb: Add lx-dmesg command
scripts/gdb: Add task iteration class
scripts/gdb: Add helper and convenience function to look up tasks
scripts/gdb: Add is_target_arch helper
scripts/gdb: Add internal helper and convenience function to retrieve
thread_info
scripts/gdb: Add get_gdbserver_type helper
scripts/gdb: Add internal helper and convenience function for per-cpu
lookup
scripts/gdb: Add lx_current convenience function
scripts/gdb: Add class to iterate over CPU masks
scripts/gdb: Add lx-lsmod command
scripts/gdb: Add basic documentation
Documentation/gdb-kernel-debugging.txt | 159 +++++++++++++++++++++++++++++++
Makefile | 5 +-
kernel/module.c | 9 +-
scripts/Makefile | 3 +-
scripts/gdb/Makefile | 11 +++
scripts/gdb/linux/Makefile | 9 ++
scripts/gdb/linux/__init__.py | 0
scripts/gdb/linux/cpus.py | 139 +++++++++++++++++++++++++++
scripts/gdb/linux/dmesg.py | 64 +++++++++++++
scripts/gdb/linux/modules.py | 111 ++++++++++++++++++++++
scripts/gdb/linux/symbols.py | 166 +++++++++++++++++++++++++++++++++
scripts/gdb/linux/tasks.py | 108 +++++++++++++++++++++
scripts/gdb/linux/utils.py | 156 +++++++++++++++++++++++++++++++
scripts/gdb/vmlinux-gdb.py | 30 ++++++
14 files changed, 966 insertions(+), 4 deletions(-)
create mode 100644 Documentation/gdb-kernel-debugging.txt
create mode 100644 scripts/gdb/Makefile
create mode 100644 scripts/gdb/linux/Makefile
create mode 100644 scripts/gdb/linux/__init__.py
create mode 100644 scripts/gdb/linux/cpus.py
create mode 100644 scripts/gdb/linux/dmesg.py
create mode 100644 scripts/gdb/linux/modules.py
create mode 100644 scripts/gdb/linux/symbols.py
create mode 100644 scripts/gdb/linux/tasks.py
create mode 100644 scripts/gdb/linux/utils.py
create mode 100644 scripts/gdb/vmlinux-gdb.py
--
1.8.1.1.298.ge7eed54
next reply other threads:[~2013-10-28 8:58 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-10-28 8:58 Jan Kiszka [this message]
2013-10-28 8:58 ` [PATCH v6 00/21] Add gdb python scripts as kernel debugging helpers Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 01/21] scripts/gdb: Add infrastructure Jan Kiszka
2013-10-30 5:35 ` Andi Kleen
2013-10-30 10:28 ` Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 02/21] scripts/gdb: Add cache for type objects Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 03/21] scripts/gdb: Add container_of helper and convenience function Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 04/21] scripts/gdb: Add module iteration class Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 05/21] scripts/gdb: Add lx-symbols command Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 06/21] module: Do not inline do_init_module Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 07/21] scripts/gdb: Add automatic symbol reloading on module insertion Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 08/21] scripts/gdb: Add internal helper and convenience function to look up a module Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 09/21] scripts/gdb: Add get_target_endianness helper Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 10/21] scripts/gdb: Add read_u16/32/64 helpers Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 11/21] scripts/gdb: Add lx-dmesg command Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 12/21] scripts/gdb: Add task iteration class Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 13/21] scripts/gdb: Add helper and convenience function to look up tasks Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 14/21] scripts/gdb: Add is_target_arch helper Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 15/21] scripts/gdb: Add internal helper and convenience function to retrieve thread_info Jan Kiszka
2013-10-28 8:58 ` Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 16/21] scripts/gdb: Add get_gdbserver_type helper Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 17/21] scripts/gdb: Add internal helper and convenience function for per-cpu lookup Jan Kiszka
2013-10-28 8:58 ` Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 18/21] scripts/gdb: Add lx_current convenience function Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 19/21] scripts/gdb: Add class to iterate over CPU masks Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 20/21] scripts/gdb: Add lx-lsmod command Jan Kiszka
2013-10-28 8:58 ` [PATCH v6 21/21] scripts/gdb: Add basic documentation Jan Kiszka
2013-10-30 11:17 ` Borislav Petkov
2013-10-30 11:22 ` Jan Kiszka
2013-10-30 11:46 ` Borislav Petkov
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=cover.1382950737.git.jan.kiszka@siemens.com \
--to=jan.kiszka@siemens.com \
--cc=akpm@linux-foundation.org \
--cc=andi@firstfloor.org \
--cc=ben@bwidawsk.net \
--cc=bp@suse.de \
--cc=davem@davemloft.net \
--cc=fenghua.yu@intel.com \
--cc=jason.wessel@windriver.com \
--cc=kay@vrfy.org \
--cc=kgdb-bugreport@lists.sourceforge.net \
--cc=linux-doc@vger.kernel.org \
--cc=linux-ia64@vger.kernel.org \
--cc=linux-kbuild@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mmarek@suse.cz \
--cc=rob@landley.net \
--cc=sparclinux@vger.kernel.org \
--cc=tatiana.alchueyr@gmail.com \
--cc=tony.luck@intel.com \
--cc=tromey@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.