Skip to content

KVM: arm/arm64: Clean up some obsolete code

Pavel Fedin kvm kvmarm 5 versions – New

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v5 Latest4 patches 0 repliesNew
  2. v43 patches 6 repliesSuperseded
  3. v33 patches 4 repliesSuperseded
Earlier versions · 2
VersionPostedPatchesRepliesStatus
v23 patches0 repliesSuperseded
v12 patches12 repliesSuperseded

Changes in v5 from the cover letter

- Split up the first patch into two, for simpler bisection.

Patches in v5 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/4KVM: arm/arm64: Remove vgic_irq_lr_mapinclude/kvm/arm_vgic.h virt/kvm/arm/vgic.c+3 -180 replies
2/4KVM: arm/arm64: Replace lr_used with elrsrinclude/kvm/arm_vgic.h virt/kvm/arm/vgic-v2.c virt/kvm/arm/vgic-v3.c +1 more+15 -270 replies
3/4KVM: arm/arm64: Clean up vgic_retire_lr() and surroundingsvirt/kvm/arm/vgic.c+10 -270 replies
4/4KVM: arm/arm64: Merge vgic_set_lr() and vgic_sync_lr_elrsr()include/kvm/arm_vgic.h virt/kvm/arm/vgic-v2.c virt/kvm/arm/vgic-v3.c +1 more+2 -230 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v5 yet.

Read the v5 thread

Cover letter [PATCH v5 0/4] KVM: arm/arm64: Clean up some obsolete code

Current KVM code has lots of old redundancies, which can be cleaned up. This patchset is actually a better alternative to
http://www.spinics.net/lists/arm-kernel/msg430726.html, which allows to keep piggy-backed LRs. The idea is based on the fact that our code also maintains LR state in elrsr, and this information is enough to track LR usage.

In case of problems this series can be applied partially, each patch is a complete refactoring step on its own.

Thanks to Andre Przywara for pinpointing some 4.3+ specifics.

This version has been tested on SMDK5410 development board (Exynos5410 SoC).

v4 => v5:
- Split up the first patch into two, for simpler bisection.

v3 => v4:
- Reordered changes for purpose of better understanding and bisection. All changes related to vgic_retire_lr() are gathered in one patch now.

v2 => v3:
- Removed two unused variables in __kvm_vgic_flush_hwstate(), overlooked leftover from v1.

v1 => v2:
- Rebased to kvmarm/next of 23.10.2015.
- Do not use vgic_retire_lr() for initializing ELRSR bitmask, because now it also handles pushback of PENDING state, use direct initialization instead (copied from Andre's patchset).
- Took more care about vgic_retire_lr(), which has deserved own patch.

Pavel Fedin (4):
KVM: arm/arm64: Remove vgic_irq_lr_map
KVM: arm/arm64: Replace lr_used with elrsr
KVM: arm/arm64: Clean up vgic_retire_lr() and surroundings
KVM: arm/arm64: Merge vgic_set_lr() and vgic_sync_lr_elrsr()

 include/kvm/arm_vgic.h |   7 ----
 virt/kvm/arm/vgic-v2.c |   6 +--
 virt/kvm/arm/vgic-v3.c |   6 +--
 virt/kvm/arm/vgic.c    | 104 +++++++++++++------------------------------------
 4 files changed, 29 insertions(+), 94 deletions(-)
Signature · 1 line
2.4.4