1.\" FreeBSD version Copyright (c) 1996 2.\" Mike Pritchard <mpp@FreeBSD.org>. All rights reserved. 3.\" 4.\" Adapted from share/man/man8/man8.hp300/crash.8 5.\" 6.\" Copyright (c) 1990, 1991, 1993 7.\" The Regents of the University of California. All rights reserved. 8.\" 9.\" Redistribution and use in source and binary forms, with or without 10.\" modification, are permitted provided that the following conditions 11.\" are met: 12.\" 1. Redistributions of source code must retain the above copyright 13.\" notice, this list of conditions and the following disclaimer. 14.\" 2. Redistributions in binary form must reproduce the above copyright 15.\" notice, this list of conditions and the following disclaimer in the 16.\" documentation and/or other materials provided with the distribution. 17.\" 3. Neither the name of the University nor the names of its contributors 18.\" may be used to endorse or promote products derived from this software 19.\" without specific prior written permission. 20.\" 21.\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 22.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 23.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 24.\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 25.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 26.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 27.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 28.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 29.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 30.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 31.\" SUCH DAMAGE. 32.\" 33.\" $FreeBSD: src/share/man/man8/crash.8,v 1.22 2005/06/30 13:01:44 hmp Exp $ 34.\" $DragonFly: src/share/man/man8/crash.8,v 1.9 2008/01/08 14:20:46 matthias Exp $ 35.\" 36.Dd January 8, 2007 37.Dt CRASH 8 38.Os 39.Sh NAME 40.Nm crash 41.Nd DragonFly system failures 42.Sh DESCRIPTION 43This section explains a bit about system crashes 44and (very briefly) how to analyze crash dumps. 45.Pp 46When the system crashes voluntarily it prints a message of the form 47.Bl -diag -offset indent 48.It "panic: why i gave up the ghost" 49.El 50.Pp 51on the console, and if dumps have been enabled (see 52.Xr dumpon 8 ) , 53takes a dump on a mass storage peripheral, 54and then invokes an automatic reboot procedure as 55described in 56.Xr reboot 8 . 57Unless some unexpected inconsistency is encountered in the state 58of the file systems due to hardware or software failure, the system 59will then resume multi-user operations. 60.Pp 61The system has a large number of internal consistency checks; if one 62of these fails, then it will panic with a very short message indicating 63which one failed. 64In many instances, this will be the name of the routine which detected 65the error, or a two-word description of the inconsistency. 66A full understanding of most panic messages requires perusal of the 67source code for the system. 68.Pp 69The most common cause of system failures is hardware failure, which 70can reflect itself in different ways. 71Here are the messages which 72are most likely, with some hints as to causes. 73Left unstated in all cases is the possibility that hardware or software 74error produced the message in some unexpected way. 75.Pp 76.Bl -diag -compact 77.It "cannot mount root" 78This panic message results from a failure to mount the root file system 79during the bootstrap process. 80Either the root file system has been corrupted, 81or the system is attempting to use the wrong device as root file system. 82Usually, an alternate copy of the system binary or an alternate root 83file system can be used to bring up the system to investigate. 84Most often this is done using the 85.Dx 86.Dq LiveCD . 87.Pp 88.It "init: not found" 89This is not a panic message, as reboots are likely to be futile. 90Late in the bootstrap procedure, the system was unable to locate 91and execute the initialization process, 92.Xr init 8 . 93The root file system is incorrect or has been corrupted, or the mode 94or type of 95.Pa /sbin/init 96forbids execution or is totally missing. 97.Pp 98.It "ffs_realloccg: bad optim" 99.It "ffs_valloc: dup alloc" 100.It "ffs_alloccgblk: cyl groups corrupted" 101.It "ffs_alloccg: map corrupted" 102.It "blkfree: freeing free block" 103.It "blkfree: freeing free frag" 104.It "ifree: freeing free inode" 105These panic messages are among those that may be produced 106when file system inconsistencies are detected. 107The problem generally results from a failure to repair damaged file systems 108after a crash, hardware failures, or other condition that should not 109normally occur. 110A file system check will normally correct the problem. 111.Pp 112.It "timeout table full" 113This really should not be a panic, but until the data structure 114involved is made to be extensible, running out of entries causes a crash. 115If this happens, make the timeout table bigger. 116.Pp 117.It "init died (signal #, exit #)" 118The system initialization process has exited with the specified 119signal number and exit code. 120This is bad news, as no new users will then be able to log in. 121Rebooting is the only fix, so the 122system just does it right away. 123.El 124.Pp 125That completes the list of panic types you are likely to see. 126.Pp 127If the system has been configured to take crash dumps (see 128.Xr dumpon 8 ) , 129then when it crashes it will write (or at least attempt to write) 130an image of memory into the back end of the dump device, 131usually the same as the primary swap 132area. 133After the system is rebooted, the program 134.Xr savecore 8 135runs and preserves a copy of this core image and the current 136system in a specified directory for later perusal. 137See 138.Xr savecore 8 139for details. 140.Pp 141To analyze a dump you should begin by running 142.Xr kgdb 1 143on the system load image and core dump. 144If the core image is the result of a panic, 145the panic message is printed. 146For more details consult the chapter on kernel debugging in 147the 148.%B "DragonFly Handbook" 149.Pq Pa http://www.dragonflybsd.org/docs/handbook/ . 150.Sh SEE ALSO 151.Xr kgdb 1 , 152.Xr dumpon 8 , 153.Xr reboot 8 , 154.Xr savecore 8 155.Sh HISTORY 156The 157.Nm 158manual page first appeared in 159.Fx 2.2 . 160