[PATCH] kexec-kdump-howto: Add notes on how to use multiple cpus on x86 system

HATAYAMA Daisuke d.hatayama at jp.fujitsu.com
Thu Mar 27 10:14:50 UTC 2014


From: Vivek Goyal <vgoyal at redhat.com>
Subject: Re: [PATCH] kexec-kdump-howto: Add notes on how to use multiple cpus on x86 system
Date: Wed, 26 Mar 2014 12:52:21 -0400

> On Wed, Mar 26, 2014 at 10:49:07AM +0100, HATAYAMA Daisuke wrote:
>> Add notes on how to use multiple cpus on x86 system. That is, these
>> are about two kernel options, disable_cpus_apicid and nr_cpus.
>> 
>> I also wrote note on memory consumption issue about nr_cpus option.
>> 
>> In the notes, I kept x86 hardware issue just a little in order to
>> avoid too detailed description.
>> 
>> I didn't write any concrete example on makedumpfile usage for parallel
>> processing since we have not decided official way on kexec-tools.
>> 
>> Signed-off-by: HATAYAMA Daisuke <d.hatayama at jp.fujitsu.com>
>> ---
>>  kexec-kdump-howto.txt | 33 +++++++++++++++++++++++++++++++++
>>  1 file changed, 33 insertions(+)
>> 
>> diff --git a/kexec-kdump-howto.txt b/kexec-kdump-howto.txt
>> index 7ffeab9..3600ec4 100644
>> --- a/kexec-kdump-howto.txt
>> +++ b/kexec-kdump-howto.txt
>> @@ -537,6 +537,39 @@ dump data from stdard input to a normal dumpfile (readable with analysis
>>  tools).
>>  For example: "makedumpfile -R vmcore < vmcore.flat"
>>  
>> +Notes on how to use multiple cpus on a capture kernel on x86 system
> 
> This file is getting bigger and it is becoming difficult to find
> information. I am thinking that we can create a new section just
> before "Debugging Tips". Say "Parallel Dumping Operation". 
> 
> Parallel Dumping Operation
> ==========================
> <Explain what parallel dumping is. How one can take advantage of on
> multi tera byte machines and then explain how to bring up multiple cpus>
> 

I see.

>> +
>> +To use multiple cpus on a capture kernel on x86 system:
>> +
>> +- First, confirm that you are using a sufficiently new kernel version
>> +  that supports disable_cpu_apicid kernel option as a capture kernel,
>> +  which is needed to avoid x86 specific hardware issue (*). The
>> +  disable_cpu_apicid kernel option is automatically appended by
>> +  kdumpctl script and is ignored if the kernel doesn't support
>> +  it. Thus, you don't need to do anything else except for the
>> +  confirmation.
>> +
>> +- Then, you need to specify how many cpus you use in a capture kernel
>> +  by specifying the number of cpus in nr_cpus kernel option in
>> +  /etc/sysconfig/kdump. nr_cpus is 1 at default.
>> +
>> +Note strongly that you should use necessary and sufficnet amount of
>> +cpus on a capture kernel. IOW, don't use too many cpus on a capture
>> +kernel, or the capture kernel easily leads to panic due to Out Of
>> +Memory.
>> +
>> +There are kernel data structures and drivers allocating memory in
>> +proportion to the number of cpus. More you use cpus, more and more
>> +memory system consumes. Memory is rare, limited resource in a capture
>> +kernel. Reserved memory should be kept as less as possible. When
>> +configuring nr_cpus option, you should confirm that kdump certainly
>> +successfully works without leading to panic due to Out Of Memory on a
>> +capture kernel.
>> +
>> +(*) Without disable_cpu_apicid kernel option, capture kernel leads to
>> +hang, system reset or power-off at boot, depending on your system and
>> +runtime situation at the time of crash.
> 
> Hatayama, it is better to first explain why bringing up multiple cpus is
> useful and what situations and then explain how to bring up multiple
> cpus.
> 

I see.

> We need to talk about parallel dumping and how to use it.
> 

Before this, we first need to decide official way of parallel
dumping.


Thanks.
HATAYAMA, Daisuke



More information about the kexec mailing list