ia64/xen-unstable
changeset 15881:42caadb14edb
[IA64] Make Big-Endian appliation run on top of dom0 and domU
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
Signed-off-by: Anthony Xu <anthony.xu@intel.com>
author | Alex Williamson <alex.williamson@hp.com> |
---|---|
date | Tue Sep 11 15:09:33 2007 -0600 (2007-09-11) |
parents | c94683db19e9 |
children | 923795831f9a |
files | xen/arch/ia64/xen/faults.c |
line diff
1.1 --- a/xen/arch/ia64/xen/faults.c Tue Sep 11 15:07:42 2007 -0600 1.2 +++ b/xen/arch/ia64/xen/faults.c Tue Sep 11 15:09:33 2007 -0600 1.3 @@ -94,7 +94,9 @@ static void reflect_interruption(unsigne 1.4 regs->cr_ipsr = vcpu_pl_adjust(regs->cr_ipsr, IA64_PSR_CPL0_BIT); 1.5 if (PSCB(v, dcr) & IA64_DCR_BE) 1.6 regs->cr_ipsr |= IA64_PSR_BE; 1.7 - 1.8 + else 1.9 + regs->cr_ipsr &= ~IA64_PSR_BE; 1.10 + 1.11 if (PSCB(v, hpsr_dfh)) 1.12 regs->cr_ipsr |= IA64_PSR_DFH; 1.13 PSCB(v, vpsr_dfh) = 0; 1.14 @@ -140,6 +142,9 @@ void reflect_event(void) 1.15 regs->cr_ipsr = vcpu_pl_adjust(regs->cr_ipsr, IA64_PSR_CPL0_BIT); 1.16 if (PSCB(v, dcr) & IA64_DCR_BE) 1.17 regs->cr_ipsr |= IA64_PSR_BE; 1.18 + else 1.19 + regs->cr_ipsr &= ~IA64_PSR_BE; 1.20 + 1.21 1.22 if (PSCB(v, hpsr_dfh)) 1.23 regs->cr_ipsr |= IA64_PSR_DFH; 1.24 @@ -241,6 +246,9 @@ void ia64_do_page_fault(unsigned long ad 1.25 IA64_PSR_CPL0_BIT); 1.26 if (PSCB(current, dcr) & IA64_DCR_BE) 1.27 regs->cr_ipsr |= IA64_PSR_BE; 1.28 + else 1.29 + regs->cr_ipsr &= ~IA64_PSR_BE; 1.30 + 1.31 1.32 if (PSCB(current, hpsr_dfh)) 1.33 regs->cr_ipsr |= IA64_PSR_DFH;