diff options
author | Alexander Graf <agraf@suse.de> | 2010-03-24 21:48:28 +0100 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-05-17 12:17:07 +0300 |
commit | ca7f4203b9b66e12d0d9968ff7dfe781f3a9695a (patch) | |
tree | ddec3225d7f7a2ab2d0cdaf4ff55725e547206d1 /arch/powerpc/include/asm/kvm_book3s.h | |
parent | 1c85e73303fa70cd6bc2bf138484acb4ffe30efd (diff) | |
download | linux-stable-ca7f4203b9b66e12d0d9968ff7dfe781f3a9695a.tar.gz linux-stable-ca7f4203b9b66e12d0d9968ff7dfe781f3a9695a.tar.bz2 linux-stable-ca7f4203b9b66e12d0d9968ff7dfe781f3a9695a.zip |
KVM: PPC: Implement alignment interrupt
Mac OS X has some applications - namely the Finder - that require alignment
interrupts to work properly. So we need to implement them.
But the spec for 970 and 750 also looks different. While 750 requires the
DSISR and DAR fields to reflect some instruction bits (DSISR) and the fault
address (DAR), the 970 declares this as an optional feature. So we need
to reconstruct DSISR and DAR manually.
Signed-off-by: Alexander Graf <agraf@suse.de>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/powerpc/include/asm/kvm_book3s.h')
-rw-r--r-- | arch/powerpc/include/asm/kvm_book3s.h | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/powerpc/include/asm/kvm_book3s.h b/arch/powerpc/include/asm/kvm_book3s.h index b47b2f516eff..bea76371dbe1 100644 --- a/arch/powerpc/include/asm/kvm_book3s.h +++ b/arch/powerpc/include/asm/kvm_book3s.h @@ -131,6 +131,8 @@ extern void kvmppc_rmcall(ulong srr0, ulong srr1); extern void kvmppc_load_up_fpu(void); extern void kvmppc_load_up_altivec(void); extern void kvmppc_load_up_vsx(void); +extern u32 kvmppc_alignment_dsisr(struct kvm_vcpu *vcpu, unsigned int inst); +extern ulong kvmppc_alignment_dar(struct kvm_vcpu *vcpu, unsigned int inst); static inline struct kvmppc_vcpu_book3s *to_book3s(struct kvm_vcpu *vcpu) { |