| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This change simplifies integration of gdb python scripts with our kernel
debugging infrastructure. Rather than putting debugging scripts in
/usr/libexec/kgdb, move them to <path-to-kernel-debug-symbols>/gdb, and
add a kernel-gdb.py which automatically loads modules from that
directory. kernel-gdb.py will be automatically executed by kgdb when
loading kernel debug symbols (assuming a default configuration), so one
no longer needs to do anything to use these modules.
The change also adds a couple of new modules, vnet.py and pcpu.py, for
conveniently accessing VNET symbols and PCPU/DPCPU fields, respectively.
Note that these require a change to the kernel linker when accessing
symbols from a loadable kernel module.
sys/tools/gdb/README.txt describes the scheme in more detail and
provides some rudiementary documentation for the commands and functions
added by these modules. It should be updated when adding new features.
sys/tools/gdb/selftest.py can be used to do some primitive testing of
the modules. All it does is execute a number of gdb commands making use
of commands and functions added by these modules. The developer is
expected to verify that the commands complete without errors and that
the output looks sane.
Discussed with: kp, avg, jhb, glebius
MFC after: 2 weeks
Differential Revision: https://reviews.freebsd.org/D50825
|
| |
|
|
|
|
|
| |
This is a residual of the $FreeBSD$ removal.
MFC After: 3 days (though I'll just run the command on the branches)
Sponsored by: Netflix
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a python script which implements the bulk of this functionality.
Over time, this would ideally evolve into a library of python routines
which can be used to inspect kernel data structures and automate some
debugging tasks, similar to jhb's out-of-tree scripts, but written in a
somewhat nicer language and with better integration into the kgdb
command prompt.
Note that kgdb currently won't auto-load scripts in this directory.
This should perhaps change in the future. It probably also makes more
sense to have a crashinfo.py which provides all the kgdb output that we
want to include in core.txt, rather than having crashinfo.sh pipe in
several commands.
Reviewed by: avg, imp
Discussed with: jhb
MFC after: 3 weeks
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D33817
|
| |
|
|
|
|
|
|
|
| |
This should make crash reports a bit more useful without having to ask
for additional information.
Reviewed by: imp
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D42465
|
| |
|
|
|
|
|
|
| |
We have not had gdb 6.1 in the base system for some time; there is no
need to check for it.
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D34478
|
| |
|
|
| |
Remove /^\.\\"\n\.\\"\s*\$FreeBSD\$$\n/
|
| |
|
|
| |
Remove /^\s*#[#!]?\s*\$FreeBSD\$.*$\n/
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
| |
We intend to remove the obsolete GDB 6.1.1 from FreeBSD before FreeBSD 13.
Reviewed by jhb
Sponsored by: The FreeBSD Foundation
Differential Revision: https://reviews.freebsd.org/D27447
Notes:
svn path=/head/; revision=368282
|
| |
|
|
|
|
|
| |
- new sentence, new line
Notes:
svn path=/head/; revision=367902
|
| |
|
|
|
|
|
|
|
| |
running kernel instead of the stats of the crashed kernel. The current
version uses sysctls to query the stats and does not work at all (anymore)
on crash dumps.
Notes:
svn path=/head/; revision=366311
|
| |
|
|
|
|
|
|
|
| |
As of r359457 we removed the GDB_LIBEXEC option, always installing in-tree
gdb into /usr/libexec/. Thus, there is now no need for crashinfo to include
/usr/bin/gdb in the list of pathnames to check when looking for gdb.
Notes:
svn path=/head/; revision=361930
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Temporarily decompress a copy of a crash dump compressed with either
gzip or zstd and run various tools against the decompressed copy while
generating the crash information. The uncompressed copy is deleted when
the script exits.
Note that crashinfo is enabled by default, so this will attempt to
decompress the most recent compressed crash dump after a crash that
generates a compressed crash dump. Users who wish to only do offline
analysis of compressed crash dumps can disable crashinfo in rc.conf.
Tested by: ler
Reviewed by: markj
MFC after: 2 weeks
Notes:
svn path=/head/; revision=336645
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Mainly focus on files that use BSD 3-Clause license.
The Software Package Data Exchange (SPDX) group provides a specification
to make it easier for automated tools to detect and summarize well known
opensource licenses. We are gradually adopting the specification, noting
that the tags are considered only advisory and do not, in any way,
superceed or replace the license texts.
Special thanks to Wind River for providing access to "The Duke of
Highlander" tool: an older (2014) run over FreeBSD tree was useful as a
starting point.
Notes:
svn path=/head/; revision=326025
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Long objdir paths make it easy to hit the version string length limit in
kernel dump headers. The build number and timestamp are unlikely to be
truncated and ought to be sufficient to protect against false positives.
Discussed with: jhb
MFC after: 1 week
Notes:
svn path=/head/; revision=321228
|
| |
|
|
|
|
|
|
|
|
|
|
| |
In batch mode, most messages go into the core.txt.N file instead of stdout.
Reviewed by: jhb
MFC after: 3 days
Sponsored by: Dell EMC
Differential Revision: https://reviews.freebsd.org/D10429
Notes:
svn path=/head/; revision=319477
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
When this option is enabled, only gdb and kgdb are installed to
/usr/libexec for use by crashinfo(8). Other bits of GDB such as
gdbserver and gdbtui are not installed. For this option to be
effective, GDB must be enabled.
Rework r317094 to re-enable GDB on all platforms but enable
GDB_LIBEXEC on platforms for which the GDB in ports is a superset of
functionality.
Reviewed by: emaste, kib
Suggested by: kib
Relnotes: yes
Differential Revision: https://reviews.freebsd.org/D10449
Notes:
svn path=/head/; revision=317416
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If gdb from ports is installed, use it instead of the base system gdb
to extract variables from a kernel. Note that base gdb and ports gdb
do not support the same options for invoking a single command in batch
mode, so a wrapper shell function is used. In addition, prefer kgdb
from ports when generating a backtrace if present.
PR: 193335
Reviewed by: emaste
MFC after: 1 week
Differential Revision: https://reviews.freebsd.org/D7218
Notes:
svn path=/head/; revision=303109
|
| |\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Off by default, build behaves normally.
WITH_META_MODE we get auto objdir creation, the ability to
start build from anywhere in the tree.
Still need to add real targets under targets/ to build packages.
Differential Revision: D2796
Reviewed by: brooks imp
Notes:
svn path=/head/; revision=284345
|
| | |
| |
| |
| | |
Notes:
svn path=/projects/bmake/; revision=284172
|
| | |\
| |/
|/|
| | |
Notes:
svn path=/projects/bmake/; revision=283595
|
| | |\
| | |
| | |
| | | |
Notes:
svn path=/projects/bmake/; revision=265044
|
| | |\ \
| | | |
| | | |
| | | | |
Notes:
svn path=/projects/bmake/; revision=255263
|
| | | | |
| | | |
| | | |
| | | | |
Notes:
svn path=/projects/bmake/; revision=246868
|
| | | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
Requested by: Simon Gerraty <sjg@juniper.net>
Notes:
svn path=/projects/bmake/; revision=239572
|
| | |_|/
|/| |
| | |
| | | |
Notes:
svn path=/head/; revision=281291
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Reviewed by: jhb
MFC after: 1 week
Notes:
svn path=/head/; revision=259870
|
| | |/
|/|
| |
| | |
Notes:
svn path=/head/; revision=257469
|
| |/
|
|
|
|
|
| |
MFC after: 1 week
Notes:
svn path=/head/; revision=254959
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of blindly grabbing the line with 'Version string' and the
following one from the core info file, take all lines after 'Version
string' until the one one that matches the field format in the core info
file. This provides compatibility with VendorBSD modifications that have
a different kernel ident format.
Reviewed by: jhb
Notes:
svn path=/head/; revision=232666
|
| |
|
|
|
|
|
|
|
|
|
|
| |
kern.bootfile sysctl). Prior to this commit, crashinfo(8) only looks at
/boot/*/kernel; this includes the usual places where kernels reside, so
for most systems this will have no effect.
Approved by: jhb
MFC after: 3 days
Notes:
svn path=/head/; revision=216077
|
| |
|
|
|
|
|
|
|
|
|
| |
from reading crashinfo output, which could contain some sensitive
information.
Reviewed by: jhb
MFC after: 1 week
Notes:
svn path=/head/; revision=198846
|
| |
|
|
|
|
|
|
| |
Submitted by: Mikolaj Golub to my trociny of gmail
MFC after: 3 days
Notes:
svn path=/head/; revision=198586
|
| |
|
|
| |
Notes:
svn path=/head/; revision=197299
|
| |
|
|
|
|
|
|
|
|
|
| |
appeared in FreeBSD.
PR: 133785
Submitted by: Ulrich Spoerlein <uqs@spoerlein.net>
MFC after: 3 days
Notes:
svn path=/head/; revision=191414
|
|
|
dump or minidump). When the script is run, it generates a text file
containing the output of several commands run againt the core dump such
as kgdb (stack trace), ps, netstat, vmstat, iostat, dmesg, and fstat.
Obtained from: Yahoo!
MFC after: 2 weeks
Notes:
svn path=/head/; revision=181335
|