makedumpfile-1.2.3: Add the filtering feature for free_pages of linux-2.6.24

Ken'ichi Ohmichi oomichi at
Wed Nov 14 02:14:54 EST 2007


makedumpfile version 1.2.3 is released.
Please test it. Your opinions/comments are welcome.

o Add the filtering feature for free_pages of linux-2.6.24.
  A new makedumpfile can exclude all the free pages of linux-2.6.24
  by searching the array "free_area.free_list[]".
  In 2.6.24-rc1 or later, the free_area.free_list is an array which
  has one list for each migrate types instead of a single list.
  This patch was provided by Huang Ying. Thanks Huang.

    struct free_area {
            struct list_head        free_list;
            unsigned long           nr_free;

    #define MIGRATE_TYPES         5
    struct free_area {
            struct list_head        free_list[MIGRATE_TYPES];
            unsigned long           nr_free;

  If executing makedumpfile on the following environment, please specify
  the "--elf64-core-headers" option for the kexec command to preload
  2nd-kernel, or apply the following patch to the kexec command.
  Without the above workarounds, makedumpfile command aborts by invalid
  ELF header in /proc/vmcore.
  - Environment:
    CPU         : i386
    Memory      : 4GB or larger
    kernel      : i386 PAE
    kexec-tools : v20071030

  - Patch:
    "[PATCH] Fix the feature determining ELF32/ELF64 automatically"

Explanation of makedumpfile:
  To shorten the size of the dumpfile and the time of creating the
  dumpfile, makedumpfile copies only the necessary pages for analysis
  to the dumpfile from /proc/vmcore. You can specify the kind of
  unnecessary pages with dump_level. If you want to shorten the size
  further, enable the compression of the page data.

  You can download the latest makedumpfile(ver. 1.2.3) from the following URL.
  Details of the change are written on the CVS page of the following site.

Method of installation:
  You can compile the makedumpfile command as follows;
  1. "tar -zxvf makedumpfile-1.2.3.tar.gz"
  2. "cd makedumpfile"
  3. "make; make install"

  makedumpfile [-c] [-E] [-d dump_level] [-x vmlinux] dump_mem dump_file

  If you want to exclude pages filled by zero, cache pages, user pages
  and free pages and to enable compression, please execute the following

  # makedumpfile -c -d 31 -x vmlinux /proc/vmcore dumpfile

Ken'ichi Ohmichi

More information about the kexec mailing list