Commit Graph

116 Commits

Author SHA1 Message Date
Dave Anderson
51f0a176c4 Fix for custom X86_64 kernels that change the declaration of the
context_switch() function so that it is not an inline function.
Without the patch, the message "crash: cannot determine thread return
address" is displayed during invocation, and backtraces of blocked
tasks may have missing or invalid frames.
(ahonig@google.com)
2014-02-20 14:53:13 -05:00
Dave Anderson
967e95de72 crash-7.0.4 -> crash-7.0.5 2014-02-14 11:29:18 -05:00
Dave Anderson
a70d608406 Fix for the X86_64 "bt" command if an async page fault exception
occurred in a KVM guest running a Linux 2.6.38 or later kernel.
Without the patch, the exception frame register dump is not displayed
above the "async_page_fault" stack frame.
(anderson@redhat.com)
2014-02-12 15:13:00 -05:00
Dave Anderson
4502313d43 Update crash banner copyright to 2014
(anderson@redhat.com)
2014-02-06 09:12:52 -05:00
Dave Anderson
4ba15a6172 Reduce the number of CTRL-c entries required to unconditionally
terminate any manually-entered command from three to one.
(anderson@redhat.com)
2014-01-31 13:42:12 -05:00
Dave Anderson
472aa4948b When invoking a crash session with a compressed vmlinux file,
make the same host-machine/vmlinux endian verification that is
done with uncompressed vmlinx files.
(anderson@redhat.com)
2014-01-29 15:23:51 -05:00
Dave Anderson
8697c8c176 Fix for the X86_64 "bt" command if a page fault exception was
generated by the invalid contents of the RIP register.  Without
the patch, the exception frame register dump is not displayed
above the "page_fault" stack frame; and in a related issue, the
"bt -e" option will not find and display the exception frame.
(anderson@redhat.com)
2014-01-29 15:22:22 -05:00
Dave Anderson
47a0fa259a Enhancement of the X86_64 "bt" command to more correctly determine
the function frame that called into a function that was interrupted.
Without the patch, the first frame just above an IRQ exception frame
register dump may show an invalid/stale function.
(anderson@redhat.com)
2014-01-29 15:20:47 -05:00
Dave Anderson
8807d12cf0 Fix for the X86_64 "bt" command to prevent an unwarranted message
indicating "WARNING: possibly bogus exception frame" generated
from a task that was in the process of being exec'd from a kernel
thread via the call_usermodehelper() facility.
(anderson@redhat.com)
2014-01-29 15:19:08 -05:00
Dave Anderson
0c12ab1094 Create a new memory display format for an address that comes from
a slab object, consisting of the slab cache name and the address
value, separated by a colon, and encompassed in brackets:

  [slab-cache-name:address]

Enhanced the "bt -F" option such that if "-F" is entered twice,
and if the stack frame contents reference a slab cache object, both
the slab cache name and the stack contents will be displayed within
brackets.

Enhanced the "rd -S" option such that if "-S" is entered twice,
and if the memory contents reference a slab cache object, both the
slab cache name and the memory contents will be displayed within
brackets.
(anderson@redhat.com)
2014-01-29 15:12:01 -05:00
Dave Anderson
d4f34069fd When executing the commands from an input file specified by the
"-i <file>" command line option, or when accepting input from a
file as a set of commands or as a set of command arguments using the
"<" redirection character, unconditionally cease the operation if
CTRL-c is entered.  Without the patch, depending upon the command
that was running when the SIGINT was received, the operation may
continue uninterruptibly until the file contents are consumed.
(anderson@redhat.com)
2014-01-29 15:09:17 -05:00
Dave Anderson
6a3ba6ae7b Fix for the "kmem -S" command for kernels that are configured with
CONFIG_SLUB.  Eash per-cpu slab object dump may show incorrect
ALLOCATED and FREE values; and as seen on Linux 3.5 and later
kernels, the TOTAL value and the number of individual objects dumped
may also be incorrect (too small).
(anderson@redhat.com)
 Please enter the c mmit message for your changes. Lines starting
2014-01-29 15:06:53 -05:00
Dave Anderson
bc21fc9263 Fix for the "kmem -S" command on Linux 3.1 and later kernels that are
configured with CONFIG_SLUB.  Because the the page structure's inuse
and objects fields used by SLUB were changed from discrete u16 types
to bit-fields within an unsigned int, the display of per-node partial
slab statistics are incorrect.  Without the patch, the TOTAL and
ALLOCATED values are incorrectly shown as equal values, and therefore
the FREE value is always zero.
(anderson@redhat.com)
2014-01-29 15:04:55 -05:00
Dave Anderson
d49b5eff88 Add support for Xen PVH guest types introduced in Xen 4.4. Without
the patch, running against a Xen 4.4 hypervisor binary would fail
during session initialization with the error message "crash: invalid
structure member offset: domain_is_hvm".  In addition, the PVH guest
type is being registered internally as an HVM guest type, the debug
"help -X ofs" command's display of the domain_domain_flags offset
has been fixed to show it in decimal, and the setting of the internal
dc->domain_flags has been fixed to contain all flags set, not just
the first one found.
(dslutz@verizon.com)
2014-01-29 15:02:07 -05:00
Dave Anderson
bb3e3a63b9 Fix for the "runq -g" option for kernels that are configured with
CONFIG_FAIR_GROUP_SCHED, but not CONFIG_CFS_BANDWIDTH.  Without the
patch, the command fails with the message "runq: invalid structure
member offset: cfs_rq_throttled".
(vinayakm.list@gmail.com)
2014-01-29 14:56:10 -05:00
Dave Anderson
03e3937ec7 Initial commit: crash-7.0.4 2014-01-28 16:46:11 -05:00