drgn/contrib
Omar Sandoval 185a5bf66d contrib: add stack_trace_call_fault.py
It's difficult to automatically detect calling an invalid, non-NULL
pointer when getting a stack trace. This manually recreates what we do
for calls to NULL since commit 412ce956b0 ("libdrgn: x86_64: unwind
call when pc is 0"). This was used to debug the issue fixed by "net:
tcp: fix crashes trying to free half-baked MTU probes" [1].

1: https://lore.kernel.org/all/20231010173651.3990234-1-kuba@kernel.org/T/

Signed-off-by: Omar Sandoval <osandov@osandov.com>
2023-10-13 16:48:21 -07:00
..
btrfs_tree_mod_log.py Add btrfs helpers to contrib 2023-06-09 09:38:26 -07:00
btrfs_tree.py Add btrfs helpers to contrib 2023-06-09 09:38:26 -07:00
cgroup.py Create contrib directory 2022-11-16 13:17:50 -08:00
dump_btrfs_bgs.py contrib: add btrfs block group dumper 2023-06-14 16:36:13 -07:00
find_struct_file.py contrib: add find_struct_file.py 2023-10-13 16:39:17 -07:00
fs_inodes.py fs_inodes: catch proper exception for None path 2023-01-26 08:43:16 -08:00
kcore_list.py contrib: add kcore_list.py 2023-02-21 14:26:54 -08:00
kernel_sys.py add kernel_sys.py to contrib 2023-02-24 12:22:00 -08:00
lsmod.py Fix output for of lsmod.py 2023-02-27 14:22:14 -08:00
mount.py add mount.py contrib script 2023-01-27 09:56:57 -08:00
platform_drivers.py contrib: add script to dump platform drivers 2023-06-20 11:11:23 -07:00
ps.py script/ps: enhanced ps script 2023-08-29 09:46:45 -07:00
ptdrgn.py contrib: ptdrgn: Improve Object completion 2023-09-06 21:57:39 -07:00
README.rst Create contrib directory 2022-11-16 13:17:50 -08:00
stack_trace_call_fault.py contrib: add stack_trace_call_fault.py 2023-10-13 16:48:21 -07:00
tcp_sock.py Fix TCP listing contrib script 2023-02-24 13:15:00 -08:00
vmmap.py contrib: add vmmap.py script 2023-02-25 02:08:46 -08:00
vmstat.py contrib: vmstat.py: move implementation comment out of docstring 2023-02-03 11:44:04 -08:00

Community-Contributed Content
=============================

This directory contains drgn scripts, libraries, and notes that have been
contributed by the community but aren't considered a part of drgn proper. Code
in this directory is not tested and not necessarily up to the rest of the
project's standards.

This is intended as a central location to share drgn ideas with a low barrier
to entry. If you have time to polish your code, consider submitting it as a
proper helper or tool. If not, feel free to dump it here. Someone else might
find it useful as a starting point for their own investigation. It could even
be adapted into a helper or tool later.

Contributing to ``contrib``
---------------------------

The bar for contributing to ``contrib`` is intentionally low. Code submitted
here can be rough and will be only lightly reviewed. The only hard requirements
are:

* It must be relevant to drgn.
* All files must have a comment or docstring at the top describing what they
  are. This can be short.

There are also some boring legal requirements:

* All files must have a copyright notice.
* All files must be licensed under the LGPLv2.1+ (using
  ``SPDX-License-Identifier: LGPL-2.1-or-later``).
* All commits must have a ``Signed-off-by`` trailer. See `Signing Off
  <../CONTRIBUTING.rst#signing-off>`_.

We may choose to edit, reorganize, or drop parts your contribution. If in
doubt, go ahead and open a pull request, and we'll decide what to do with it.