diff options
author | David S. Miller | 2008-01-17 10:32:09 +0100 |
---|---|---|
committer | David S. Miller | 2008-01-17 15:26:55 +0100 |
commit | 6320bcebc0ee0bafc61f293bec2d0809171f6b1d (patch) | |
tree | 3304410d948260a374eaaf4ba138f777dad05520 /arch/sparc64/kernel/sun4v_tlb_miss.S | |
parent | Merge branch 'v2.6.24-rc7-lockdep' of git://git.kernel.org/pub/scm/linux/kern... (diff) | |
download | kernel-qcow2-linux-6320bcebc0ee0bafc61f293bec2d0809171f6b1d.tar.gz kernel-qcow2-linux-6320bcebc0ee0bafc61f293bec2d0809171f6b1d.tar.xz kernel-qcow2-linux-6320bcebc0ee0bafc61f293bec2d0809171f6b1d.zip |
[SPARC64]: Fix hypervisor TLB operation error reporting.
1) Trap level wasn't being passed down properly, we need to
move it from %l4 into the correct outgoing arg register.
2) Although the TPC often provides the most direct clue, we
have the caller PC so we should provide that as well.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'arch/sparc64/kernel/sun4v_tlb_miss.S')
-rw-r--r-- | arch/sparc64/kernel/sun4v_tlb_miss.S | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/sparc64/kernel/sun4v_tlb_miss.S b/arch/sparc64/kernel/sun4v_tlb_miss.S index 9871dbb1ab42..fd9430562e0b 100644 --- a/arch/sparc64/kernel/sun4v_tlb_miss.S +++ b/arch/sparc64/kernel/sun4v_tlb_miss.S @@ -215,6 +215,7 @@ sun4v_itlb_error: 1: ba,pt %xcc, etrap 2: or %g7, %lo(2b), %g7 + mov %l4, %o1 call sun4v_itlb_error_report add %sp, PTREGS_OFF, %o0 @@ -241,6 +242,7 @@ sun4v_dtlb_error: 1: ba,pt %xcc, etrap 2: or %g7, %lo(2b), %g7 + mov %l4, %o1 call sun4v_dtlb_error_report add %sp, PTREGS_OFF, %o0 |