δΊ 2014/4/27 7:43, Dave Anderson ει:
----- Original Message -----
> On 2014/4/26 3:20, Dave Anderson wrote:
>>
>>
>> ----- Original Message -----
>>> For ARM32 platfrom, The system will "offline" all CPUs except the
>>> crashing one, by clear the cpu_online_mask. So we need to find
>>> another way to get online-CPUs number for crash utility.
>>>
>>> This patch uses cpu_active_mask to get that value.
>>>
>>> Signed-off-by: Liu Hua <sdu.liu(a)huawei.com>
>>> ---
>>> arm.c | 2 +-
>>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>>
>>> diff --git a/arm.c b/arm.c
>>> index 3c38cd5..c94d7bf 100644
>>> --- a/arm.c
>>> +++ b/arm.c
>>> @@ -1518,7 +1518,7 @@ arm_display_machine_stats(void)
>>> static int
>>> arm_get_smp_cpus(void)
>>> {
>>> - return get_cpus_online();
>>> + return get_cpus_active();
>>> }
>>>
>>> /*
>>
>> When did this start happening? I ask because no other ARM users have
>> reported this until now. I've only got one sample SMP vmcore, and
>> clearly the non-crashing cpu was not offlined:
>>
>
>
> Hi Dave,
>
> commit 36a2e5010fe87 "kexec: offline non panic CPUs on Kdump panic "
> introduces this change. <v3.10.27-1-g36a2e50>
>
> The following messges come from the ARM boards on my hand. The crash
> utility has added my patchs.
>
> (1) ARM A15 16 CPUs
>
> crash> sys
>
> KERNEL: vmlinux
> DUMPFILE: vmcore_my [PARTIAL DUMP]
> CPUS: 16
> DATE: Fri Feb 28 10:07:55 2014
> UPTIME: 00:03:57
> LOAD AVERAGE: 0.03, 0.01, 0.01
> TASKS: 140
> NODENAME: arma15el
> RELEASE: 3.10.37+
> VERSION: #2 SMP Thu Apr 24 21:13:28 CST 2014
> MACHINE: armv7l (unknown Mhz)
> MEMORY: 3.1 GB
> PANIC: "Internal error: Oops: a07 [#1] SMP ARM" (check log for
details
>
> crash> help -k
> ....
> cpu_possible_map: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> cpu_present_map: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
> cpu_online_map: 0
> ...
>
>
> (2) ARM A9 4 CPUs
>
> crash> sys
> KERNEL: vmlinux
> DUMPFILE: vmcore
> CPUS: 2
> DATE: Mon Apr 14 11:09:10 2014
> UPTIME: 00:06:17
> LOAD AVERAGE: 0.16, 0.05, 0.02
> TASKS: 45
> NODENAME: arma9el
> RELEASE: 3.10.37+
> VERSION: #6 SMP Tue Apr 22 13:23:30 CST 2014
> MACHINE: armv7l (unknown Mhz)
> MEMORY: 1.5 GB
> PANIC: "Internal error: Oops: 817 [#1] SMP ARM" (check log for
> details)
>
> crash> help -k
> ....
> cpu_possible_map: 0 1
> cpu_present_map: 0 1
> cpu_online_map: 1
>
>
> crash> p per_cpu__runqueues
>
> PER-CPU DATA TYPE:
> struct rq runqueues;
> PER-CPU ADDRESSES:
> [0]: c069a680
> [1]: c06a2680
>
> With my patches, "sys" command is ok. And I can get per_cpu variables
correctly.
> But something should be done for "help -k". May be I should add fully
support
> for cpu_active_mask. If necessory, I will resend this patch series.
It's not necessary, but it would be nice to have, and would be
easy to add.
Also, would it be possible that you can let me have a copy of your
16-cpu vmlinux/vmcore pair? That would be a great sample for
my testing.
Thanks,
Dave
Hi Dave,
Sure, there seems no extra problems caused by the commit above. We can add it when
necessory.
And, I am very sorry to tell you that I have no authority for sending binary files out of
my
company, becasue of it's security rules. I have no ways to send that huge file out.
Maybe
I can do some test for you on my platform.
Thanks
Liu Hua