dumpsys - Copies a snapshot of memory to a dump file
/sbin/dumpsys [-fisuz] [-r num] directory
-f Perform a full core dump -- the default is a partial dump.
-i Ignore filesystem space limit warning -- copy the dump even if there is
insufficient filesystem space to save it. Only the portion of the dump
that fits in the space available is copied.
Set the expected dump compression ratio, defaulting to 0.5. A lower
number means a better compression ratio is expected.
-s Print the expected size of a full and partial dump file -- no dump is
-u Produce a non-compressed dump.
-z Disable contiguous zero suppression.
The dumpsys command allows you to save a snapshot of the system memory to a
dump file. There are times when system memory requires analysis but it may
not be possible to halt the system and take a normal crash dump. Many prob-
lems can be resolved by taking a snapshot of the system memory while the
system is running. The dumpsys command performs this function after it
determines that there is enough file system space to save a core dump (see
the following for information about minfree).
Note that the system is running while dumpsys takes a snapshot of memory.
This means that memory may be changing as it is copied. As a result,
analysis of the resulting dump may show inconsistencies such as incomplete
linked lists and partially zeroed pages. These are features caused by the
transitory state of memory, caused by the working system. For this reason,
some system problems cannot be detected by dumpsys and you must halt the
system to take a normal crash dump.
The dumpsys command writes information in directory. By default, directory
The dump contains the contents of a portion of physical memory (or all of
physical memory in the case of a full core dump) at the time of the command
execution. The dumpsys command saves this information in the file
vmzcore.n, or vmcore.n if compression is supressed. The command also
copies the kernel executable image, usually /vmunix, to the vmunix.n file.
You can then analyze the vmzcore.n and vmunix.n files (See the Kernel
Debugging manual for information about analyzing core dump files.)
The variable n indicates the number of the core file. For the first file,
dumpsys creates the files vmunix.0 and vmcore.0. It then creates a file
named directory/bounds and initializes the file with the value 1. For
each succeeding dump, the dumpsys command uses the value in the
directory/bounds file and then increments that value.
By default dumpsys produces specially compressed dump files. The compres-
sion scheme used is not as powerful as compress or gzip but has the unusual
feature that any byte in the file can be extracted without decompressing
more than about 40K (typically less), even if the dump is very large.
Tools such as dbx, ladebug, and kdbx, are able to read the compressed core
files. The expand_dump utility is provided to convert compressed dumps
into non-compressed dumps if you want to use an analysis tool that does not
understand the compressed format.
A traditional non-compressed dump can be generated using the -u switch. In
this case the dump file will be named vmcore.n instead of vmzcore.n.
It is possible that you may run dumpsys on a kernel that is not recent
enough to support compressed dumps. If this happens, dumpsys will display
a warning that the kernel is too old, but will then produce a non-
compressed dump. The message is suppressed if -u is used. Conversely, if
you try to use older versions of dumpsys with a newer kernel a non-
compressed dump is created without a message. The older dumpsys version
will not recognize the -u or -r options.
The text file directory/minfree specifies the minimum number of kilobytes
that must be left on the filesystem containing directory after dumpsys
copies the dump. By default, this file does not exist, indicating that the
minimum is set to zero. To specify a minimum, create the file and store the
number of kilobytes you want reserved in it.You can override the minimum
check of directory/minfree using the -i option.
The -s option displays the approximate number of disk blocks that full and
partial dumps will require. The exact size can not be determined ahead of
time for many reasons, such as:
Contiguous Zero Suppression
By default, dumpsys optimizes disk space requirements by suppressing
the writing of contiguous zeroes.
System use of dynamic memory (malloc/free) changes while the system is
If the dump is to be compressed, the ratio by which it will be
compressed is not known.
The -z option disables contiguous zero suppression. A considerable amount
of memory consists of contiguous zeros, that do not need to be written to
disk. The dumpsys command optimizes disk space by default, but optimiza-
tion of disk space causes longer execution times. If you specify the -z
option, the run time can be 25% faster, although you will require more disk
space. Note that if the dump is to be compressed, zero supression is not
usedm therefore the -z option is meaningless.
With the exception of the -s option, execution of dumpsys requires root
(superuser) access rights.
0 Success -- dump taken
1 General error -- dump failed
2 Insufficient file system space -- dump failed
Specifies the number of the next dump
Specifies the minimum number of kilobytes to be left after dump files
Commands: dbx(1), expand_dump(8), savecore(8)