Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-changelog

[Xen-changelog] Fix and re-enable hyperprivop for ptc.ga (slow path only

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] Fix and re-enable hyperprivop for ptc.ga (slow path only for now)
From: BitKeeper Bot <riel@xxxxxxxxxxx>
Date: Tue, 21 Jun 2005 20:10:51 +0000
Cc: james@xxxxxxxxxxxxx
Delivery-date: Thu, 23 Jun 2005 11:03:25 +0000
Envelope-to: www-data@xxxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-changelog-request@lists.xensource.com?subject=help>
List-id: BK change log <xen-changelog.lists.xensource.com>
List-post: <mailto:xen-changelog@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-changelog>, <mailto:xen-changelog-request@lists.xensource.com?subject=unsubscribe>
Reply-to: Xen Development List <xen-devel@xxxxxxxxxxxxxxxxxxx>
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
ChangeSet 1.1713.2.18, 2005/06/21 14:10:51-06:00, djm@xxxxxxxxxxxxxxx

        Fix and re-enable hyperprivop for ptc.ga (slow path only for now)
        Signed-off-by: Dan Magenheimer <dan.magenheimer@xxxxxx>



 hyperprivop.S |    8 ++++++++
 privop.c      |    6 ++----
 2 files changed, 10 insertions(+), 4 deletions(-)


diff -Nru a/xen/arch/ia64/hyperprivop.S b/xen/arch/ia64/hyperprivop.S
--- a/xen/arch/ia64/hyperprivop.S       2005-06-23 07:04:36 -04:00
+++ b/xen/arch/ia64/hyperprivop.S       2005-06-23 07:04:36 -04:00
@@ -109,6 +109,10 @@
        cmp.eq p7,p6=XEN_HYPER_GET_RR,r17
 (p7)   br.sptk.many hyper_get_rr;;
 
+       // HYPERPRIVOP_PTC_GA?
+       cmp.eq p7,p6=XEN_HYPER_PTC_GA,r17
+(p7)   br.sptk.many hyper_ptc_ga;;
+
        // if not one of the above, give up for now and do it the slow way
        br.sptk.many dispatch_break_fault ;;
 
@@ -909,3 +913,7 @@
        rfi
        ;;
 END(hyper_set_rr)
+
+ENTRY(hyper_ptc_ga)
+       br.spnt.many dispatch_break_fault ;;
+END(hyper_ptc_ga)
diff -Nru a/xen/arch/ia64/privop.c b/xen/arch/ia64/privop.c
--- a/xen/arch/ia64/privop.c    2005-06-23 07:04:36 -04:00
+++ b/xen/arch/ia64/privop.c    2005-06-23 07:04:36 -04:00
@@ -832,10 +832,8 @@
                regs->r8 = val;
                return 1;
            case HYPERPRIVOP_PTC_GA:
-               // FIXME: this doesn't seem to work yet, turned off
-               //(void)vcpu_ptc_ga(v,regs->r8,regs->r9);
-               //return 1;
-               break;
+               (void)vcpu_ptc_ga(v,regs->r8,(1L << ((regs->r9 & 0xfc) >> 2)));
+               return 1;
            case HYPERPRIVOP_ITR_D:
                (void)vcpu_get_itir(v,&itir);
                (void)vcpu_get_ifa(v,&ifa);

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] Fix and re-enable hyperprivop for ptc.ga (slow path only for now), BitKeeper Bot <=