From fac2d59ae47bd8b04e55b865852dbdcfa1602fbd Mon Sep 17 00:00:00 2001 From: WANG Chao Date: Thu, 5 Dec 2013 13:06:57 +0800 Subject: [PATCH] makedumpfile compression method default to lzo Lzo is proven faster than zlib, for large memory machine it will extremely shorten the time for saving vmcore. Let's switch to lzo as the default compression method for makedumpfile. The drawback is lzo has a little less compression ratio than zlib. But considering for most users, speed/time is a more serious concern than vmcore size. So I think default to lzo will benefit most of the users. v1->v2: update kdump.conf.5 [DaveY] Signed-off-by: WANG Chao Acked-by: Vivek Goyal Acked-by: Dave Young --- dracut-kdump.sh | 2 +- kdump.conf | 6 +++--- kdump.conf.5 | 16 ++++++++-------- kexec-kdump-howto.txt | 18 +++++++++--------- 4 files changed, 21 insertions(+), 21 deletions(-) diff --git a/dracut-kdump.sh b/dracut-kdump.sh index d157cd1..4d8616f 100755 --- a/dracut-kdump.sh +++ b/dracut-kdump.sh @@ -11,7 +11,7 @@ fi set -o pipefail KDUMP_PATH="/var/crash" CORE_COLLECTOR="" -DEFAULT_CORE_COLLECTOR="makedumpfile -c --message-level 1 -d 31" +DEFAULT_CORE_COLLECTOR="makedumpfile -l --message-level 1 -d 31" DMESG_COLLECTOR="/sbin/vmcore-dmesg" DEFAULT_ACTION="reboot -f" DATEDIR=`date +%Y.%m.%d-%T` diff --git a/kdump.conf b/kdump.conf index c5cfb4a..3c411fb 100644 --- a/kdump.conf +++ b/kdump.conf @@ -50,9 +50,9 @@ # automatically be populated with a config file # appropriate for the running kernel. # Default core_collector for raw/ssh dump is: -# "makedumpfile -F -c --message-level 1 -d 31". +# "makedumpfile -F -l --message-level 1 -d 31". # Default core_collector for other targets is: -# "makedumpfile -c --message-level 1 -d 31". +# "makedumpfile -l --message-level 1 -d 31". # For core_collector format details please refer to # kexec-kdump-howto.txt or kdump.conf manpage. # @@ -132,7 +132,7 @@ #ssh user@my.server.com #sshkey /root/.ssh/kdump_id_rsa path /var/crash -#core_collector makedumpfile -c --message-level 1 -d 31 +#core_collector makedumpfile -l --message-level 1 -d 31 #core_collector scp #kdump_post /var/crash/scripts/kdump-post.sh #kdump_pre /var/crash/scripts/kdump-pre.sh diff --git a/kdump.conf.5 b/kdump.conf.5 index 6f88370..7eaf9dd 100644 --- a/kdump.conf.5 +++ b/kdump.conf.5 @@ -78,9 +78,9 @@ for the running kernel. .PP Note 1: About default core collector: Default core_collector for raw/ssh dump is: -"makedumpfile -F -c --message-level 1 -d 31". +"makedumpfile -F -l --message-level 1 -d 31". Default core_collector for other targets is: -"makedumpfile -c --message-level 1 -d 31". +"makedumpfile -l --message-level 1 -d 31". Even if core_collector option is commented out in kdump.conf, makedumpfile is default core collector and kdump uses it internally. If one does not want makedumpfile as default core_collector, then they @@ -253,11 +253,11 @@ Above will effectively be translated to: cp --sparse=always /proc/vmcore /vmcore .TP ex2. -core_collector "makedumpfile -c --message-level 1 -d 31" +core_collector "makedumpfile -l --message-level 1 -d 31" Above will effectively be translated to: -makedumpfile -c --message-level 1 -d 31 /proc/vmcore /vmcore +makedumpfile -l --message-level 1 -d 31 /proc/vmcore /vmcore .PP For dump targets like raw and ssh, in general, core collector should expect one argument (source file) and should output the processed core on standard @@ -274,11 +274,11 @@ Above will effectively be translated to. cat /proc/vmcore | dd of= .TP ex4. -core_collector "makedumpfile -F -c --message-level 1 -d 31" +core_collector "makedumpfile -F -l --message-level 1 -d 31" Above will effectively be translated to. -makedumpfile -F -c --message-level 1 -d 31 | dd of= +makedumpfile -F -l --message-level 1 -d 31 | dd of= .PP ssh dumps examples .TP @@ -290,11 +290,11 @@ Above will effectively be translated to. cat /proc/vmcore | ssh "dd of=path/vmcore" .TP ex6. -core_collector "makedumpfile -F -c --message-level 1 -d 31" +core_collector "makedumpfile -F -l --message-level 1 -d 31" Above will effectively be translated to. -makedumpfile -F -c --message-level 1 -d 31 | ssh "dd of=path/vmcore" +makedumpfile -F -l --message-level 1 -d 31 | ssh "dd of=path/vmcore" There is one exception to standard output rule for ssh dumps. And that is scp. As scp can handle ssh destinations for file transfers, one can diff --git a/kexec-kdump-howto.txt b/kexec-kdump-howto.txt index d70781b..7ffeab9 100644 --- a/kexec-kdump-howto.txt +++ b/kexec-kdump-howto.txt @@ -438,7 +438,7 @@ is a dump filtering and compression utility provided with kexec-tools. On some architectures, it can drastically reduce the size of your vmcore files, which becomes very useful on systems with large amounts of memory. -A typical setup is 'core_collector makedumpfile -F -c --message-level 1 -d 31', +A typical setup is 'core_collector makedumpfile -F -l --message-level 1 -d 31', but check the output of '/sbin/makedumpfile --help' for a list of all available options (-i and -g don't need to be specified, they're automatically taken care of). Note that use of makedumpfile requires that the kernel-debuginfo package @@ -458,11 +458,11 @@ cp --sparse=always /proc/vmcore /vmcore ex2. --- -core_collector "makedumpfile -c --message-level 1 -d 31" +core_collector "makedumpfile -l --message-level 1 -d 31" Above will effectively be translated to: -makedumpfile -c --message-level 1 -d 31 /proc/vmcore /vmcore +makedumpfile -l --message-level 1 -d 31 /proc/vmcore /vmcore For dump targets like raw and ssh, in general, core collector should expect @@ -482,11 +482,11 @@ cat /proc/vmcore | dd of= ex4. --- -core_collector "makedumpfile -F -c --message-level 1 -d 31" +core_collector "makedumpfile -F -l --message-level 1 -d 31" Above will effectively be translated to. -makedumpfile -F -c --message-level 1 -d 31 | dd of= +makedumpfile -F -l --message-level 1 -d 31 | dd of= ssh dumps core_collector examples: --------- @@ -500,11 +500,11 @@ cat /proc/vmcore | ssh "dd of=path/vmcore" ex6. --- -core_collector "makedumpfile -F -c --message-level 1 -d 31" +core_collector "makedumpfile -F -l --message-level 1 -d 31" Above will effectively be translated to. -makedumpfile -F -c --message-level 1 -d 31 | ssh "dd of=path/vmcore" +makedumpfile -F -l --message-level 1 -d 31 | ssh "dd of=path/vmcore" There is one exception to standard output rule for ssh dumps. And that is scp. As scp can handle ssh destinations for file transfers, one can @@ -521,9 +521,9 @@ scp /proc/vmcore :path/vmcore About default core collector ---------------------------- Default core_collector for ssh/raw dump is: -"makedumpfile -F -c --message-level 1 -d 31". +"makedumpfile -F -l --message-level 1 -d 31". Default core_collector for other targets is: -"makedumpfile -c --message-level 1 -d 31". +"makedumpfile -l --message-level 1 -d 31". Even if core_collector option is commented out in kdump.conf, makedumpfile is default core collector and kdump uses it internally.