[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] [IA64] Disable more privify code
# HG changeset patch # User Alex Williamson <alex.williamson@xxxxxx> # Date 1180987235 21600 # Node ID 249446c52deba48aaaa2255535edf5da204379d4 # Parent c0cdcebc0377f817155587cd83da79b234f769a5 [IA64] Disable more privify code Conditionally comment two privify code blocks. Signed-off-by: Tristan Gingold <tgingold@xxxxxxx> --- xen/arch/ia64/xen/ivt.S | 6 +++++- xen/arch/ia64/xen/privop.c | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff -r c0cdcebc0377 -r 249446c52deb xen/arch/ia64/xen/ivt.S --- a/xen/arch/ia64/xen/ivt.S Mon Jun 04 13:57:08 2007 -0600 +++ b/xen/arch/ia64/xen/ivt.S Mon Jun 04 14:00:35 2007 -0600 @@ -587,9 +587,13 @@ ENTRY(break_fault) ;; ld8 r18=[r18] ;; - cmp.eq p7,p0=r0,r17 // is this a psuedo-cover? +#ifdef CONFIG_PRIVIFY + // pseudo-cover are replaced by break.b which (unfortunatly) always + // clear iim. + cmp.eq p7,p0=r0,r17 (p7) br.spnt.many dispatch_privop_fault ;; +#endif // if (ipsr.cpl == 2 && (iim - HYPERPRIVOP_START) < HYPERPRIVOP_MAX) // this is a hyperprivop. A hyperprivop is hand-coded assembly with // psr.ic off which means it can make no calls, cannot use r1-r15, diff -r c0cdcebc0377 -r 249446c52deb xen/arch/ia64/xen/privop.c --- a/xen/arch/ia64/xen/privop.c Mon Jun 04 13:57:08 2007 -0600 +++ b/xen/arch/ia64/xen/privop.c Mon Jun 04 14:00:35 2007 -0600 @@ -702,7 +702,7 @@ static IA64FAULT priv_handle_op(VCPU * v perfc_incr(bsw1); return priv_bsw1(vcpu, inst); } - if (inst.B8.x6 == 0x0) { + if (privify_en && inst.B8.x6 == 0x0) { // break instr for privified cover perfc_incr(cover); return priv_cover(vcpu, inst); _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |