[PATCH v2 5/5] Add support for --splitblock-size
Atsushi Kumagai
kumagai-atsushi at mxc.nes.nec.co.jp
Tue Oct 28 00:28:47 PDT 2014
>> Use --splitblock-size to specify splitblock size (KB)
>> When --split is specified in cyclic mode,splitblock table will be
>> generated in create_dump_bitmap().
>>
>> Signed-off-by: Qiao Nuohan <qiaonuohan at cn.fujitsu.com>
>> Signed-off-by: Zhou Wenjian <zhouwj-fnst at cn.fujitsu.com>
>> ---
>> makedumpfile.8 | 16 ++++++++++++++++
>> makedumpfile.c | 4 ++++
>> makedumpfile.h | 1 +
>> print_info.c | 16 +++++++++++++++-
>> 4 files changed, 36 insertions(+), 1 deletions(-)
>>
>> diff --git a/makedumpfile.8 b/makedumpfile.8
>> index 9cb12c0..a5b7055 100644
>> --- a/makedumpfile.8
>> +++ b/makedumpfile.8
>> @@ -386,6 +386,22 @@ size, so ordinary users don't need to specify this option.
>> # makedumpfile \-\-cyclic\-buffer 1024 \-d 31 \-x vmlinux /proc/vmcore dumpfile
>>
>> .TP
>> +\fB\-\-splitblock\-size\fR \fIsplitblock_size\fR
>> +Specify the splitblock size in kilo bytes for analysis in the cyclic mode with --split.
>> +In the cyclic split mode, the number of splitblocks is represented as:
>> +
>> + num_of_splitblocks = system_memory / (\fIsplitblock_size\fR * 1KB )
>> +
>
>For what people do you want to show this expression? It would be hard
>for ordinary users to understand this expression. I think at least the
>following explanation is necessary; and more detailed information is
>verbose.
>
> If --splitblock N is specified, difference of each splitted dumpfile
> size is at most N kilo bytes.
>
>> +The larger number of splitblock, the faster working speed is expected, but the more memory will
>> +be taken. By default, \fIsplitblock_size\fR will be set as 1GB, so ordinary users don't need to
>> +specify this option.
>> +
>> +.br
>> +.B Example:
>> +.br
>> +# makedumpfile \-\-splitblock\-size 10240 \-d 31 \-x vmlinux \-\-split /proc/vmcore dumpfile1 dumpfile2
>> +
>> +.TP
>> \fB\-\-non\-cyclic\fR
>> Running in the non-cyclic mode, this mode uses the old filtering logic same as v1.4.4 or before.
>> If you feel the cyclic mode is too slow, please try this mode.
>> diff --git a/makedumpfile.c b/makedumpfile.c
>> index 32c0919..112f2e4 100644
>> --- a/makedumpfile.c
>> +++ b/makedumpfile.c
>> @@ -9578,6 +9578,7 @@ static struct option longopts[] = {
>> {"eppic", required_argument, NULL, OPT_EPPIC},
>> {"non-mmap", no_argument, NULL, OPT_NON_MMAP},
>> {"mem-usage", no_argument, NULL, OPT_MEM_USAGE},
>> + {"splitblock-size", required_argument, NULL, OPT_SPLITBLOCK_SIZE},
>> {0, 0, 0, 0}
>> };
>>
>> @@ -9718,6 +9719,9 @@ main(int argc, char *argv[])
>> case OPT_CYCLIC_BUFFER:
>> info->bufsize_cyclic = atoi(optarg);
>> break;
>> + case OPT_SPLITBLOCK_SIZE:
>> + info->splitblock_size = atoi(optarg);
>> + break;
>> case '?':
>> MSG("Commandline parameter is invalid.\n");
>> MSG("Try `makedumpfile --help' for more information.\n");
>> diff --git a/makedumpfile.h b/makedumpfile.h
>> index 60e6f2f..7bc57d9 100644
>> --- a/makedumpfile.h
>> +++ b/makedumpfile.h
>> @@ -1883,6 +1883,7 @@ struct elf_prstatus {
>> #define OPT_EPPIC OPT_START+12
>> #define OPT_NON_MMAP OPT_START+13
>> #define OPT_MEM_USAGE OPT_START+14
>> +#define OPT_SPLITBLOCK_SIZE OPT_START+15
>>
>> /*
>> * Function Prototype.
>> diff --git a/print_info.c b/print_info.c
>> index f6342d3..2cdffd8 100644
>> --- a/print_info.c
>> +++ b/print_info.c
>> @@ -203,7 +203,21 @@ print_usage(void)
>> MSG(" By default, BUFFER_SIZE will be calculated automatically depending on\n");
>> MSG(" system memory size, so ordinary users don't need to specify this option.\n");
>> MSG("\n");
>> - MSG(" [--non-cyclic]:\n");
>> + MSG(" [--splitblock-size SPLITBLOCK_SIZE]:\n");
>> + MSG(" Specify the splitblock size in kilo bytes for analysis in the cyclic mode\n");
>> + MSG(" with --split.\n");
>> + MSG(" In the cyclic mode, the number of splitblocks is represented as:\n");
>> + MSG("\n");
>> + MSG(" num_of_splitblocks = system_memory / (splitblock_size * 1KB)\n");
>
>Just the same as the above comment.
>
>> + MSG("\n");
>> + MSG(" The larger number of splitblock, the faster working speed is expected, but\n");
>> + MSG(" the more memory will be taken. By default, splitblock_size will be set as\n");
>> + MSG(" 1GB, so ordinary users don't need to specify this option.\n");
>> + MSG("\n");
>> + MSG(" The lesser number of cycles, the faster working speed is expected.\n");
>> + MSG(" By default, BUFFER_SIZE will be calculated automatically depending on\n");
>> + MSG(" system memory size, so ordinary users don't need to specify this option.\n");
In addition, the last segment is a duplicate of --cyclic-buffer's.
Thanks,
Atsushi Kumagai
>> + MSG("\n"); MSG(" [--non-cyclic]:\n");
>> MSG(" Running in the non-cyclic mode, this mode uses the old filtering logic\n");
>> MSG(" same as v1.4.4 or before.\n");
>> MSG(" If you feel the cyclic mode is too slow, please try this mode.\n");
>> --
>> 1.7.1
>>
>>
>> _______________________________________________
>> kexec mailing list
>> kexec at lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/kexec
>--
>Thanks.
>HATAYAMA, Daisuke
>
>
>_______________________________________________
>kexec mailing list
>kexec at lists.infradead.org
>http://lists.infradead.org/mailman/listinfo/kexec
More information about the kexec
mailing list