Julien Grall 3248136b36 KVM: arm64: Align the VMID allocation with the arm64 ASID
At the moment, the VMID algorithm will send an SGI to all the
CPUs to force an exit and then broadcast a full TLB flush and
I-Cache invalidation.

This patch uses the new VMID allocator. The benefits are:
   - Aligns with arm64 ASID algorithm.
   - CPUs are not forced to exit at roll-over. Instead,
     the VMID will be marked reserved and context invalidation
     is broadcasted. This will reduce the IPIs traffic.
   - More flexible to add support for pinned KVM VMIDs in
     the future.
   
With the new algo, the code is now adapted:
    - The call to update_vmid() will be done with preemption
      disabled as the new algo requires to store information
      per-CPU.

Signed-off-by: Julien Grall <julien.grall@arm.com>
Signed-off-by: Shameer Kolothum <shameerali.kolothum.thodi@huawei.com>
Signed-off-by: Marc Zyngier <maz@kernel.org>
Link: https://lore.kernel.org/r/20211122121844.867-4-shameerali.kolothum.thodi@huawei.com
2022-02-08 14:57:03 +00:00
..
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-01-19 11:15:19 +02:00
2022-02-05 09:55:59 -08:00
2022-01-19 11:15:19 +02:00
2022-01-19 11:15:19 +02:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-02-05 00:58:25 -05:00
2022-01-23 06:20:44 +02:00
2022-01-23 06:20:44 +02:00
2022-02-06 10:11:14 -08:00
2022-01-23 06:20:44 +02:00