On Monday 04 September 2017 01:03 PM, Jan Kiszka wrote:
> On 2017-08-30 21:00, 'Lokesh Vutla' via Jailhouse wrote:
>> Get affinity levels from mpidr and populate it in sgi before
>> sending sgi in arm_cpu_kick().
>>
>> Signed-off-by: Lokesh Vutla <[email protected]>
>> ---
>>  hypervisor/arch/arm-common/control.c | 6 +++++-
>>  1 file changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/hypervisor/arch/arm-common/control.c 
>> b/hypervisor/arch/arm-common/control.c
>> index c5476b2..18b7f8e 100644
>> --- a/hypervisor/arch/arm-common/control.c
>> +++ b/hypervisor/arch/arm-common/control.c
>> @@ -37,9 +37,13 @@ void arm_cpu_park(void)
>>  
>>  void arm_cpu_kick(unsigned int cpu_id)
>>  {
>> +    u64 mpidr = per_cpu(cpu_id)->mpidr;
>>      struct sgi sgi = {};
> 
> Not directly related to this patch, but I think I recently read that {}
> doesn't guarantee zero-initialization according to the standard. We
> should also set the routing_mode to 0 to avoid gray area.

okay, will add a separate patch for that.

Thanks  and regards,
Lokesh

> 
> Jan
> 
>>  
>> -    sgi.targets = 1 << cpu_id;
>> +    sgi.targets = 1 << MPIDR_AFFINITY_LEVEL(mpidr, 0);
>> +    sgi.aff1 = MPIDR_AFFINITY_LEVEL(mpidr, 1);
>> +    sgi.aff2 = MPIDR_AFFINITY_LEVEL(mpidr, 2);
>> +    sgi.aff3 = MPIDR_AFFINITY_LEVEL(mpidr, 3);
>>      sgi.id = SGI_EVENT;
>>      irqchip_send_sgi(&sgi);
>>  }
>>
> 

-- 
You received this message because you are subscribed to the Google Groups 
"Jailhouse" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to