KVM: PPC: refer to paravirt docs in header file
Instead of keeping separate copies of struct kvm_vcpu_arch_shared (one in the code, one in the docs) that inevitably fail to be kept in sync (already sr[] is missing from the doc version), just point to the header file as the source of documentation on the contents of the magic page. Signed-off-by: Scott Wood <scottwood@freescale.com> Acked-by: Avi Kivity <avi@redhat.com> Signed-off-by: Alexander Graf <agraf@suse.de> Signed-off-by: Avi Kivity <avi@redhat.com>
This commit is contained in:
parent
b3c5d3c2a4
commit
54f65795c8
|
@ -81,28 +81,8 @@ additional registers to the magic page. If you add fields to the magic page,
|
||||||
also define a new hypercall feature to indicate that the host can give you more
|
also define a new hypercall feature to indicate that the host can give you more
|
||||||
registers. Only if the host supports the additional features, make use of them.
|
registers. Only if the host supports the additional features, make use of them.
|
||||||
|
|
||||||
The magic page has the following layout as described in
|
The magic page layout is described by struct kvm_vcpu_arch_shared
|
||||||
arch/powerpc/include/asm/kvm_para.h:
|
in arch/powerpc/include/asm/kvm_para.h.
|
||||||
|
|
||||||
struct kvm_vcpu_arch_shared {
|
|
||||||
__u64 scratch1;
|
|
||||||
__u64 scratch2;
|
|
||||||
__u64 scratch3;
|
|
||||||
__u64 critical; /* Guest may not get interrupts if == r1 */
|
|
||||||
__u64 sprg0;
|
|
||||||
__u64 sprg1;
|
|
||||||
__u64 sprg2;
|
|
||||||
__u64 sprg3;
|
|
||||||
__u64 srr0;
|
|
||||||
__u64 srr1;
|
|
||||||
__u64 dar;
|
|
||||||
__u64 msr;
|
|
||||||
__u32 dsisr;
|
|
||||||
__u32 int_pending; /* Tells the guest if we have an interrupt */
|
|
||||||
};
|
|
||||||
|
|
||||||
Additions to the page must only occur at the end. Struct fields are always 32
|
|
||||||
or 64 bit aligned, depending on them being 32 or 64 bit wide respectively.
|
|
||||||
|
|
||||||
Magic page features
|
Magic page features
|
||||||
===================
|
===================
|
||||||
|
|
|
@ -22,6 +22,16 @@
|
||||||
|
|
||||||
#include <linux/types.h>
|
#include <linux/types.h>
|
||||||
|
|
||||||
|
/*
|
||||||
|
* Additions to this struct must only occur at the end, and should be
|
||||||
|
* accompanied by a KVM_MAGIC_FEAT flag to advertise that they are present
|
||||||
|
* (albeit not necessarily relevant to the current target hardware platform).
|
||||||
|
*
|
||||||
|
* Struct fields are always 32 or 64 bit aligned, depending on them being 32
|
||||||
|
* or 64 bit wide respectively.
|
||||||
|
*
|
||||||
|
* See Documentation/virtual/kvm/ppc-pv.txt
|
||||||
|
*/
|
||||||
struct kvm_vcpu_arch_shared {
|
struct kvm_vcpu_arch_shared {
|
||||||
__u64 scratch1;
|
__u64 scratch1;
|
||||||
__u64 scratch2;
|
__u64 scratch2;
|
||||||
|
|
Loading…
Reference in New Issue