Compaq AA-RH99A-TE Remote Starter User Manual


 
related data structures and functions that appear earlier in the stack.
An earlier function might have passed corrupt data to the function
that caused a crash.
6. Determine whether you can fix the problem.
If the system crashed because of a hardware problem (for example,
because a memory board became corrupt), correcting the problem
probably requires repairing or replacing the hardware. You might be
able to disconnect the hardware that caused the problem and operate
without it until it is repaired or replaced. If you need to repair or replace
hardware, call your support representative.
If a software panic caused the crash, you can fix the problem if it is
in software you or someone else at your company wrote. Otherwise,
you must request that the producer of the software fix the problem by
calling your support representative.
4.2 Identifying a Crash Caused by a Software Problem
When software encounters a state from which it cannot continue, it calls the
system panic function. For example, if the software attempts to access an
area of memory that is protected from access, the software might call the
panic function and crash the system.
In most cases, only system programmers can fix the problem that caused a
panic because most panics are caused by software errors. However, some
system panics reflect other problems. For example, if a memory board
becomes corrupted, software that attempts to write to that board might call
the panic function and crash the system. In this case, the solution might be
to replace the memory board and reboot the system.
The sections that follow demonstrate finding the cause of a software panic
using the dbx and kdbx debuggers. You can also examine output from the
crashdc crash data collection tool to help you determine the cause of a
crash. Sample output from crashdc is shown and explained in Appendix A.
4.2.1 Using dbx to Determine the Cause of a Software Panic
The following example shows a method for identifying a software panic with
the dbx debugger:
# dbx -k vmunix.0 vmzcore.0
dbx version 5.0
Type helpfor help.
stopped at [boot:753 ,0xfffffc00003c4ae4] Source not available
(dbx) p panicstr
1
0xfffffc000044b648 = "ialloc: dup alloc"
(dbx) t
2
> 0 boot(paniced = 0, arghowto = 0) ["../../../../src/kernel/arch/alpha/machdep.\
4–2 Crash Analysis Examples