[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] ARM CPU affinities
From: |
Peter Crosthwaite |
Subject: |
Re: [Qemu-devel] ARM CPU affinities |
Date: |
Mon, 28 Sep 2015 09:56:28 -0700 |
On Mon, Sep 28, 2015 at 2:13 AM, Peter Maydell <address@hidden> wrote:
> On 27 September 2015 at 22:28, Peter Crosthwaite
> <address@hidden> wrote:
>> Hi Peter,
>>
>> I am looking at this:
>>
>> static void arm_cpu_initfn(Object *obj)
>> {
>> ...
>> Aff1 = cs->cpu_index / ARM_CPUS_PER_CLUSTER;
>> Aff0 = cs->cpu_index % ARM_CPUS_PER_CLUSTER;
>> cpu->mp_affinity = (Aff1 << ARM_AFF1_SHIFT) | Aff0;
>>
>>
>> Should we push this up to the machine model? I am trying to fix a
>> machine where Aff1 of the one and only cluster is non-zero. The kernel
>> SMP support barfs when Aff1 is mismatched to whats in the DTB (CPU reg
>> property).
>>
>> I think this modulo 8 starting from 0:0 policy might be specific to
>> mach-virt?
>
> Yeah, it should be a CPU property if you need it to be something
> different. I think we just left it as a hardcoded thing until
> somebody needed it to be different.
>
> NB that as the comment says KVM currently imposes its own numbering
> anyway -- if you care about that you need to get the kernel to
> support having userspace tell it about affinity numbering.
>
Not worrying about KVM yet, but I think pushing this up to virt
shouldn’t interfere with that work anyway.
Regards,
Peter
> thanks
> -- PMM
Re: [Qemu-devel] ARM CPU affinities,
Peter Crosthwaite <=