|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-ia64-devel] PATCH: 4k-correction, tak emulation
Hi, attached is another patch needed to run BS2000 as DomU. With this patch BS2000 is coming up into multi-user mode. Changes: - a correction in 4k page size support - emulation of the "tak" instruction Juergen -- Juergen Gross Principal Developer IP SW OS6 Telephone: +49 (0) 89 636 47950 Fujitsu Siemens Computers e-mail: juergen.gross@xxxxxxxxxxxxxxxxxxx Otto-Hahn-Ring 6 Internet: www.fujitsu-siemens.com D-81739 Muenchen Company details: www.fujitsu-siemens.com/imprint.html # HG changeset patch
# User juergen.gross@xxxxxxxxxxxxxxxxxx
# Node ID 1668a62e1c1fff8dc8d552c4fb459ecb19663157
# Parent f16bff0934d7ea2f000b166c05fb6b2fd8103fa9
tak emulation, minor 4k-page correction
Signed-off-by: Juergen Gross juergen.gross@xxxxxxxxxxxxxxxxxxx
diff -r f16bff0934d7 -r 1668a62e1c1f xen/arch/ia64/xen/mm.c
--- a/xen/arch/ia64/xen/mm.c Fri Sep 7 13:56:50 2007 -0600
+++ b/xen/arch/ia64/xen/mm.c Tue Sep 11 10:29:49 2007 +0200
@@ -527,7 +527,7 @@ u64 translate_domain_pte(u64 pteval, u64
pteval2 = lookup_domain_mpa(d, mpaddr, entry);
if (ps < PAGE_SHIFT)
- pteval2 |= address & (PAGE_SIZE - 1) & ~((1L << ps) - 1);
+ pteval2 |= mpaddr & (PAGE_SIZE - 1) & ~((1L << ps) - 1);
/* Check access rights. */
arflags = pteval & _PAGE_AR_MASK;
diff -r f16bff0934d7 -r 1668a62e1c1f xen/arch/ia64/xen/vcpu.c
--- a/xen/arch/ia64/xen/vcpu.c Fri Sep 7 13:56:50 2007 -0600
+++ b/xen/arch/ia64/xen/vcpu.c Tue Sep 11 10:29:49 2007 +0200
@@ -1817,10 +1817,16 @@ IA64FAULT vcpu_tpa(VCPU * vcpu, u64 vadr
IA64FAULT vcpu_tak(VCPU * vcpu, u64 vadr, u64 * key)
{
- printk("vcpu_tak: tak instruction unsupported\n");
- return IA64_ILLOP_FAULT;
- // HACK ALERT: tak does a thash for now
- //return vcpu_thash(vcpu,vadr,key);
+ u64 pteval, itir, mask, iha;
+ IA64FAULT fault;
+
+ fault = vcpu_translate(vcpu, vadr, TRUE, &pteval, &itir, &iha);
+ if (fault == IA64_NO_FAULT || fault == IA64_USE_TLB) {
+ *key = itir & IA64_ITIR_KEY_MASK;
+ } else {
+ *key = 1;
+ }
+ return IA64_NO_FAULT;
}
/**************************************************************************
_______________________________________________ Xen-ia64-devel mailing list Xen-ia64-devel@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-ia64-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |