summaryrefslogtreecommitdiffstats
path: root/arch/ia64
diff options
context:
space:
mode:
authorIsaku Yamahata <yamahata@valinux.co.jp>2008-08-04 12:02:28 +0900
committerTony Luck <tony.luck@intel.com>2008-08-04 10:52:12 -0700
commit9b3cbf725fb98733976fd02e2e557f0ae3028df0 (patch)
tree7ebd5f36df50f953fa545f6d57a81227dad4c7a8 /arch/ia64
parent8f616cd5249e03c9e1b371623d85e76d4b86bbc1 (diff)
downloadop-kernel-dev-9b3cbf725fb98733976fd02e2e557f0ae3028df0.zip
op-kernel-dev-9b3cbf725fb98733976fd02e2e557f0ae3028df0.tar.gz
[IA64] pv_ops: fix ivt.S paravirtualization
Recent kernels are not booting on some HP systems (though it does boot on others). James and Willy reported the problem. James did the bisection to find the commit that caused the problem: 498c5170472ff0c03a29d22dbd33225a0be038f4. [IA64] pvops: paravirtualize ivt.S Two instructions were wrongly paravirtualized such that _FROM_ macro had been used where _TO_ was intended Cc: James Bottomley <James.Bottomley@HansenPartnership.com> Cc: "Wilcox, Matthew R" <matthew.r.wilcox@intel.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'arch/ia64')
-rw-r--r--arch/ia64/kernel/ivt.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/arch/ia64/kernel/ivt.S b/arch/ia64/kernel/ivt.S
index c39627d..416a952 100644
--- a/arch/ia64/kernel/ivt.S
+++ b/arch/ia64/kernel/ivt.S
@@ -1243,11 +1243,11 @@ ENTRY(speculation_vector)
add r17=r17,r18 // now add the offset
;;
- MOV_FROM_IIP(r17)
+ MOV_TO_IIP(r17, r19)
dep r16=0,r16,41,2 // clear EI
;;
- MOV_FROM_IPSR(p0, r16)
+ MOV_TO_IPSR(p0, r16, r19)
;;
RFI
OpenPOWER on IntegriCloud