Hi
I have tried the arm_get_smp_cpus implementation given below and it works fine on all
examples I have tested.
What about ARM64? Same update?
Jan
Jan Karlsson
Senior Software Engineer
System Assurance
Sony Mobile Communications
Tel: +46 703 062 174
jan.karlsson(a)sonymobile.com
sonymobile.com
-----Original Message-----
From: crash-utility-bounces(a)redhat.com [mailto:crash-utility-bounces@redhat.com] On Behalf
Of Dave Anderson
Sent: den 15 oktober 2014 15:36
To: Discussion list for crash utility usage, maintenance and development
Subject: Re: [Crash-utility] FW: Number of cpus on ARM
----- Original Message -----
----- Original Message -----
>
> Hello
>
> That would be a possibility but I prefer if crash can calculate the
> correct number of cpus itself.
>
Right, the --cpus option is only there as a workaround.
> If we just want to set the number of cpus to the number of cpus
> present, then the function “get_cpus_present()” could probably be used.
I prefer your patch copying ARM64. You could throw get_cpus_present()
in there, but it wouldn't apply to 2.6.29 and earlier kernels.
I take that back -- I've got an ARM ramdump where they take all cpus offline before
taking the dump. How about this:
static int
arm_get_smp_cpus(void)
{
int cpus;
if (cpus = get_cpus_present())
return cpus;
else
return MAX(get_cpus_online(), get_highest_cpu_online()+1); }
It covers all bases with all the sample dumpfiles I've got on hand.
Dave
Dave
>
>
> Jan
>
>
>
> Jan Karlsson
>
> Senior Software Engineer
>
> System Assurance
>
>
>
> Sony Mobile Communications
>
> Tel: +46 703 062 174
>
> jan.karlsson(a)sonymobile.com
>
>
>
>
sonymobile.com
>
>
>
>
>
>
>
>
> From: crash-utility-bounces(a)redhat.com
> [mailto:crash-utility-bounces@redhat.com] On Behalf Of Arun KS
> Sent: den 15 oktober 2014 11:57
> To: Discussion list for crash utility usage, maintenance and
> development
> Subject: Re: [Crash-utility] FW: Number of cpus on ARM
>
>
>
>
>
> Hello Jan,
>
>
>
>
>
> Can you try with option --cpus=4 passed when your start the crash.
>
>
> I used 4 here because i have 4 cores.
>
>
>
>
>
> Thanks,
>
>
> Arun
>
>
>
>
>
> On Wed, Oct 15, 2014 at 2:49 PM, Karlsson, Jan <
> Jan.Karlsson(a)sonymobile.com
> > wrote:
>
>
> Hi
>
>
>
> Unfortunately I found another older example where my patch below did
> not work.
>
> In that one only cpu 0 where online but 0,1,2,3 where active. So maybe:
>
>
>
> return MAX(get_cpus_active(), get_highest_cpu_online()+1);
>
>
>
> might work better. Someone with better knowledge about this than I
> have should look at the problem.
>
>
>
> Jan
>
>
>
>
> Jan Karlsson
>
> Senior Software Engineer
>
> System Assurance
>
>
>
> Sony Mobile Communications
>
> Tel: +46 703 062 174
>
> jan.karlsson(a)sonymobile.com
>
>
>
>
sonymobile.com
>
>
>
>
>
>
>
>
>
> From: Karlsson, Jan
> Sent: den 15 oktober 2014 10:49
> To: Discussion list for crash utility usage, maintenance and
> development
> Subject:
>
>
>
>
> Hi
>
>
>
> I have seen a problem when it comes to the number of cpus for ARM
> (32-bits).
>
>
>
> static int
>
> arm_get_smp_cpus(void)
>
> {
>
> return MAX(get_cpus_active(), get_cpus_online());
>
> }
>
>
>
> In one of my example, “help –k” gives me:
>
> cpu_possible_map: 0 1 2 3
>
> cpu_present_map: 0 1 2 3
>
> cpu_online_map: 0 3
>
> cpu_active_map: 3
>
>
>
> So the number of cpus will become 2. However there are code in a
> number of places that will then only accept cpu 0 and 1 as cpus to handle.
>
>
>
> When I changed to code to be the same as for ARM64 things worked as
> expected:
>
>
>
> static int
>
> arm_get_smp_cpus(void)
>
> {
>
> return MAX(get_cpus_online(), get_highest_cpu_online()+1);
>
> }
>
>
>
> Jan
>
>
>
> Jan Karlsson
>
> Senior Software Engineer
>
> System Assurance
>
>
>
> Sony Mobile Communications
>
> Tel: +46 703 062 174
>
> jan.karlsson(a)sonymobile.com
>
>
>
>
sonymobile.com
>
>
>
>
>
>
>
>
>
> --
> Crash-utility mailing list
> Crash-utility(a)redhat.com
>
https://www.redhat.com/mailman/listinfo/crash-utility
>
>
>
>
> --
> Crash-utility mailing list
> Crash-utility(a)redhat.com
>
https://www.redhat.com/mailman/listinfo/crash-utility
--
Crash-utility mailing list
Crash-utility(a)redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility
--
Crash-utility mailing list
Crash-utility(a)redhat.com
https://www.redhat.com/mailman/listinfo/crash-utility