Commit 3a179306 authored by Pingfan Liu's avatar Pingfan Liu Committed by Will Deacon
Browse files

Documentation/kvm/arm: improve description of HVC_SOFT_RESTART



Besides disabling MMU, HVC_SOFT_RESTART also clears I+D bits. These behaviors
are what kexec-reboot expects, so describe it more precisely.

Signed-off-by: default avatarPingfan Liu <kernelfans@gmail.com>
Cc: James Morse <james.morse@arm.com>
Cc: Marc Zyngier <maz@kernel.org>
Cc: Geoff Levand <geoff@infradead.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Will Deacon <will@kernel.org>
Cc: Julien Thierry <julien.thierry.kdev@gmail.com>
Cc: Suzuki K Poulose <suzuki.poulose@arm.com>
Cc: linux-doc@vger.kernel.org
Cc: kvmarm@lists.cs.columbia.edu
Link: https://lore.kernel.org/r/1598621998-20563-2-git-send-email-kernelfans@gmail.com


To: linux-arm-kernel@lists.infradead.org
Signed-off-by: default avatarWill Deacon <will@kernel.org>
parent 72789a4a
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -54,9 +54,9 @@ these functions (see arch/arm{,64}/include/asm/virt.h):
    x3 = x1's value when entering the next payload (arm64)
    x4 = x2's value when entering the next payload (arm64)

  Mask all exceptions, disable the MMU, move the arguments into place
  (arm64 only), and jump to the restart address while at HYP/EL2. This
  hypercall is not expected to return to its caller.
  Mask all exceptions, disable the MMU, clear I+D bits, move the arguments
  into place (arm64 only), and jump to the restart address while at HYP/EL2.
  This hypercall is not expected to return to its caller.

Any other value of r0/x0 triggers a hypervisor-specific handling,
which is not documented here.