On 2017-09-05 16:32, Lokesh Vutla wrote:
> Get cluster_id 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 | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
> 
> diff --git a/hypervisor/arch/arm-common/control.c 
> b/hypervisor/arch/arm-common/control.c
> index c5476b2..54f0de8 100644
> --- a/hypervisor/arch/arm-common/control.c
> +++ b/hypervisor/arch/arm-common/control.c
> @@ -37,9 +37,11 @@ void arm_cpu_park(void)
>  
>  void arm_cpu_kick(unsigned int cpu_id)
>  {
> +     u64 mpidr = per_cpu(cpu_id)->mpidr;
>       struct sgi sgi = {};
>  
> -     sgi.targets = 1 << cpu_id;
> +     sgi.targets = 1 << MPIDR_AFFINITY_LEVEL(mpidr, 0);

Also this change is actually a bug fix, like with patch 3. Worth a note
in the commit log as well.

> +     sgi.cluster_id = mpidr & MPIDR_CLUSTERID_MASK;
>       sgi.id = SGI_EVENT;
>       irqchip_send_sgi(&sgi);
>  }
> 

Jan

-- 
Siemens AG, Corporate Technology, CT RDA ITP SES-DE
Corporate Competence Center Embedded Linux

-- 
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