lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Thu,  3 Mar 2016 11:40:54 +0000
From:	Kieran Bingham <kieran.bingham@...aro.org>
To:	jan.kiszka@...mens.com, linux-kernel@...r.kernel.org
Cc:	lee.jones@...aro.org, peter.griffin@...aro.org,
	maxime.coquelin@...com, Kieran Bingham <kieran.bingham@...aro.org>
Subject: [PATCHv3 00/13] scripts/gdb: Linux awareness debug commands

Hi Jan,

V3 of the patchset respun. Now finally adding the lx-interrupts command
after I resolved my issues with the Radix Tree parsing.

This command only provides the interrupts that are available generically,
and it seems that the /proc/interrupts function calls into arch specific
layers to add extra information about arch specific interrupts.

I'm not sure what to do about this yet - The values returned appear to be
accurarate - but it's just a subset of the information returned by proc.

lx_thread_info_by_pid has been useful to me while looking at thread
awareness, so I've included it into this patch set now. It makes finding
internal thread information much more convenient.

dentry_name has been moved to the utils module, as I am already using it
in another command, so it's just not appropriate to be in proc.py

The cpu_list mask iterators make calling for cpu in each_online_cpu() read
nicely, and I've left the print_cpus() function in for now as a hidden
helper. It can be used by calling:
  python linux.cpus.print_cpus()
to check these generators, which I thought was quite nice - but I didn't
know if it warranted a full command class for this.

For convenience, this patch set submission can be found at
  http://git.linaro.org/people/kieran.bingham/linux.git gdb-scripts-2016-03-03-lkml-submission

Patchset Changelog:
v3:
 - Radix Tree parser introduced
 - cpu_list mask iterators added
 - lx-interrupts command implemented
 - dentry_name function moved to utils
 - lx-meminfo command PEP8 warnings fixed
 - lx_thread_info_by_pid introduced

v2:
 - Reworked iterators with improved versions from Jeff Mahoney
 - Fixed !CONFIG_MODULES and !CONFIG_MMU support
 - Improvements on lx-meminfo
 - constants.py generated by Kbuild
 - IS_BUILTIN facility used to provide LX_CONFIG values

v1:
 - Introduced lx-iomem, lx-ioports, lx-mounts, lx-meminfo

Kieran Bingham (13):
  scripts/gdb: Provide linux constants
  scripts/gdb: Provide kernel list item generators
  scripts/gdb: Convert modules usage to lists functions
  scripts/gdb: Provide exception catching parser
  scripts/gdb: Support !CONFIG_MODULES gracefully
  scripts/gdb: Provide a dentry_name VFS path helper
  scripts/gdb: Add io resource readers
  scripts/gdb: Add mount point list command
  scripts/gdb: Add meminfo command
  scripts/gdb: Add cpu iterators
  scripts/gdb: Add a Radix Tree Parser
  scripts/gdb: Add interrupts command
  scripts/gdb: Add lx_thread_info_by_pid helper

 Kbuild                            |  10 +
 scripts/gdb/linux/Makefile        |  12 +-
 scripts/gdb/linux/constants.py.in |  93 ++++++++
 scripts/gdb/linux/cpus.py         |  21 ++
 scripts/gdb/linux/lists.py        |  20 ++
 scripts/gdb/linux/modules.py      |  22 +-
 scripts/gdb/linux/proc.py         | 449 ++++++++++++++++++++++++++++++++++++++
 scripts/gdb/linux/radixtree.py    |  74 +++++++
 scripts/gdb/linux/tasks.py        |  19 ++
 scripts/gdb/linux/utils.py        |  15 ++
 scripts/gdb/vmlinux-gdb.py        |   2 +
 11 files changed, 724 insertions(+), 13 deletions(-)
 create mode 100644 scripts/gdb/linux/constants.py.in
 create mode 100644 scripts/gdb/linux/radixtree.py

-- 
2.5.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ