diff options
-rw-r--r-- | Documentation/virtual/kvm/ppc-pv.txt | 24 | ||||
-rw-r--r-- | arch/powerpc/include/asm/kvm_para.h | 10 |
2 files changed, 12 insertions, 22 deletions
diff --git a/Documentation/virtual/kvm/ppc-pv.txt b/Documentation/virtual/kvm/ppc-pv.txt index 2b7ce190cde..6e7c3705093 100644 --- a/Documentation/virtual/kvm/ppc-pv.txt +++ b/Documentation/virtual/kvm/ppc-pv.txt | |||
@@ -81,28 +81,8 @@ additional registers to the magic page. If you add fields to the magic page, | |||
81 | also define a new hypercall feature to indicate that the host can give you more | 81 | also define a new hypercall feature to indicate that the host can give you more |
82 | registers. Only if the host supports the additional features, make use of them. | 82 | registers. Only if the host supports the additional features, make use of them. |
83 | 83 | ||
84 | The magic page has the following layout as described in | 84 | The magic page layout is described by struct kvm_vcpu_arch_shared |
85 | arch/powerpc/include/asm/kvm_para.h: | 85 | in arch/powerpc/include/asm/kvm_para.h. |
86 | |||
87 | struct kvm_vcpu_arch_shared { | ||
88 | __u64 scratch1; | ||
89 | __u64 scratch2; | ||
90 | __u64 scratch3; | ||
91 | __u64 critical; /* Guest may not get interrupts if == r1 */ | ||
92 | __u64 sprg0; | ||
93 | __u64 sprg1; | ||
94 | __u64 sprg2; | ||
95 | __u64 sprg3; | ||
96 | __u64 srr0; | ||
97 | __u64 srr1; | ||
98 | __u64 dar; | ||
99 | __u64 msr; | ||
100 | __u32 dsisr; | ||
101 | __u32 int_pending; /* Tells the guest if we have an interrupt */ | ||
102 | }; | ||
103 | |||
104 | Additions to the page must only occur at the end. Struct fields are always 32 | ||
105 | or 64 bit aligned, depending on them being 32 or 64 bit wide respectively. | ||
106 | 86 | ||
107 | Magic page features | 87 | Magic page features |
108 | =================== | 88 | =================== |
diff --git a/arch/powerpc/include/asm/kvm_para.h b/arch/powerpc/include/asm/kvm_para.h index ece70fb3651..7b754e74300 100644 --- a/arch/powerpc/include/asm/kvm_para.h +++ b/arch/powerpc/include/asm/kvm_para.h | |||
@@ -22,6 +22,16 @@ | |||
22 | 22 | ||
23 | #include <linux/types.h> | 23 | #include <linux/types.h> |
24 | 24 | ||
25 | /* | ||
26 | * Additions to this struct must only occur at the end, and should be | ||
27 | * accompanied by a KVM_MAGIC_FEAT flag to advertise that they are present | ||
28 | * (albeit not necessarily relevant to the current target hardware platform). | ||
29 | * | ||
30 | * Struct fields are always 32 or 64 bit aligned, depending on them being 32 | ||
31 | * or 64 bit wide respectively. | ||
32 | * | ||
33 | * See Documentation/virtual/kvm/ppc-pv.txt | ||
34 | */ | ||
25 | struct kvm_vcpu_arch_shared { | 35 | struct kvm_vcpu_arch_shared { |
26 | __u64 scratch1; | 36 | __u64 scratch1; |
27 | __u64 scratch2; | 37 | __u64 scratch2; |