Commit Graph

16 Commits

Author SHA1 Message Date
Dave Anderson
97a39ce0c7 If an ARM or ARM64 dumpfile does not contain the register sets of
the active tasks in the kernel's per-cpu crash_notes, there is an
initialization-time warning message indicating "could not retrieve
crash_notes".  It has been changed to a more meaningful warning
message indicating "cannot retrieve registers for active tasks".
(anderson@redhat.com)
2014-07-30 14:11:33 -04:00
Dave Anderson
520fcee94d Determine the various ARM64 kernel virtual address ranges using the
kernel's VA_BITS value.  It currently is hardwired in the kernel to
one of two values depending upon whether 4K or 64K pages are
configured.  However, there are plans to support 16K paqes, to make
VA_BITS a configurable value, and to make the number of page-table
levels configurable.  Towards that end, the crash utility has been
changed to determine the VA_BITS value based upon known kernel
virtual addresses, and to then calculate the relevant kernel virtual
address ranges on that value instead of hardwiring them based upon
the page size.
(anderson@redhat.com)
2014-07-23 11:14:37 -04:00
Dave Anderson
ee73b32996 When running against an ARM64 dumpfile created with the "snap.so"
extension module, do not attempt to read the crash_notes.  Since the
dumpfile was taken while running on a live system, the crash_notes,
if configured into the kernel, would not contain valid data.  Without
the patch, the message "WARNING: could not retrieve crash_notes" is
displayed during session initialization.
(anderson@redhat.com)
2014-07-18 16:07:42 -04:00
Dave Anderson
773a6822b9 During initialization, reject useless ARM64 "(A)" absolute symbols
that begin with "__crc_".  Without the patch, several thousand of
them may be displayed by "sym -l" prior to the first kernel virtual
address symbol.
(anderson@redhat.com)
2014-07-18 12:03:59 -04:00
Dave Anderson
40da7b939e Fix for the ARM64 "vtop <address>" command on kernels configured
with 64K pages if the address argument is located in the kernel
logical memory map region, which uses 512MB hugepage mappings.
Without the patch, the verbose page table walk mistakenly continues
to the PTE level.
(anderson@redhat.com)
2014-04-14 15:48:58 -04:00
Dave Anderson
7010f10be1 Fix for a segmentation violation generated by the "crash -g vmlinux"
command on ARM64.
(anderson@redhat.com)
2014-04-11 14:55:22 -04:00
Dave Anderson
bcad624fe2 Fix for the "vm -p" option on ARM64 so that file-backed pages are
properly translated to the filename and offset.  Without the patch,
file-backed pages are erroneously shown as being backed on a swap
device.
(anderson@redhat.com)
2014-04-08 13:10:02 -04:00
Dave Anderson
81ea0bc877 Implemented support for the ARM64 "bt -f" and "bt -F[F]" options.
(anderson@redhat.com)
2014-04-04 16:09:40 -04:00
Dave Anderson
9eb2a4a616 Fix for the ARM64 virtual-to-physical translation of vmemmap page
structure addresses for kernels configured with 4K pages.  Without
the patch, any command that required the contents of a page structure
would fail with a readmem error.
(cldu@marvell.com, anderson@redhat.com)
2014-04-04 11:30:13 -04:00
Dave Anderson
d6ce9d2bba Implemented support for the ARM64 "bt -l" option.
(anderson@redhat.com)
2014-04-03 10:39:54 -04:00
Dave Anderson
12e9faa3cd Implemented support for the ARM64 "bt -e" option.
(anderson@redhat.com)
2014-04-03 10:23:10 -04:00
Dave Anderson
13f25a3e58 Cleaned up the exception frame displays of 64-bit in-kernel and both
32-bit and 64-bit user-mode exceptions.
(anderson@redhat.com)
2014-04-02 15:37:17 -04:00
Dave Anderson
7462950108 Initial working implementation of the basic ARM64 "bt" command, with
several command options still under development.  In-kernel exception
frames are only dumped if the exception handler function is contained
within the symbol boundaries from "__exception_text_start" to
"__exception_text_end"; when ARM64 kdump is eventually implemented,
further exception-related work will be resumed.
(anderson@redhat.com)
2014-04-01 16:31:26 -04:00
Dave Anderson
f9b816565d Document the "--machdep phys_offset=<physical-address>" command
line option for the ARM64 architecture in the crash.8 man page and
the "crash -h" output.
(anderson@redhat.com)
2014-03-28 14:05:22 -04:00
Dave Anderson
0f6d989aa0 Updated the ARM64 implementation to support Linux 3.13 and later
kernels that expand to a 42-bit address space when 64K pages are
configured.  This is also the first crash version that has been
tested on a live ARM64 system with 4K pages, where it cleanly
make it to the "crash>" prompt.  However, it should be noted that
some commands (most notably "bt") still do not work as of yet.
(anderson@redhat.com)
2014-03-27 16:20:50 -04:00
Dave Anderson
03e3937ec7 Initial commit: crash-7.0.4 2014-01-28 16:46:11 -05:00