WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-changelog

[Xen-changelog] [xen-unstable] hvm: Provide an HVMOP_flush_tlbs to flush

To: xen-changelog@xxxxxxxxxxxxxxxxxxx
Subject: [Xen-changelog] [xen-unstable] hvm: Provide an HVMOP_flush_tlbs to flush VCPU TLBs.
From: Xen patchbot-unstable <patchbot-unstable@xxxxxxxxxxxxxxxxxxx>
Date: Fri, 07 Sep 2007 09:13:23 -0700
Delivery-date: Fri, 07 Sep 2007 09:52:49 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
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-devel@xxxxxxxxxxxxxxxxxxx
Sender: xen-changelog-bounces@xxxxxxxxxxxxxxxxxxx
# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1188464229 -3600
# Node ID c398dad9d50a5d3f16155f0c3f6c5faf8907f9a7
# Parent  b485d8d7347ae33492490d1aca4b404af89b53e2
hvm: Provide an HVMOP_flush_tlbs to flush VCPU TLBs.
From: Peter Johnston <pjohnston@xxxxxxxxxxxxx>
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
 xen/arch/x86/hvm/hvm.c          |   10 ++++++++++
 xen/include/public/hvm/hvm_op.h |    3 +++
 2 files changed, 13 insertions(+)

diff -r b485d8d7347a -r c398dad9d50a xen/arch/x86/hvm/hvm.c
--- a/xen/arch/x86/hvm/hvm.c    Wed Aug 29 15:47:55 2007 +0100
+++ b/xen/arch/x86/hvm/hvm.c    Thu Aug 30 09:57:09 2007 +0100
@@ -1164,6 +1164,12 @@ static int hvmop_set_pci_link_route(
  out:
     rcu_unlock_domain(d);
     return rc;
+}
+
+static int hvmop_flush_tlb_all(void)
+{
+    flush_tlb_mask(current->domain->domain_dirty_cpumask);
+    return 0;
 }
 
 long do_hvm_op(unsigned long op, XEN_GUEST_HANDLE(void) arg)
@@ -1257,6 +1263,10 @@ long do_hvm_op(unsigned long op, XEN_GUE
             guest_handle_cast(arg, xen_hvm_set_pci_link_route_t));
         break;
 
+    case HVMOP_flush_tlbs:
+        rc = guest_handle_is_null(arg) ? hvmop_flush_tlb_all() : -ENOSYS;
+        break;
+
     default:
     {
         gdprintk(XENLOG_WARNING, "Bad HVM op %ld.\n", op);
diff -r b485d8d7347a -r c398dad9d50a xen/include/public/hvm/hvm_op.h
--- a/xen/include/public/hvm/hvm_op.h   Wed Aug 29 15:47:55 2007 +0100
+++ b/xen/include/public/hvm/hvm_op.h   Thu Aug 30 09:57:09 2007 +0100
@@ -70,4 +70,7 @@ typedef struct xen_hvm_set_pci_link_rout
 typedef struct xen_hvm_set_pci_link_route xen_hvm_set_pci_link_route_t;
 DEFINE_XEN_GUEST_HANDLE(xen_hvm_set_pci_link_route_t);
 
+/* Flushes all VCPU TLBs: @arg must be NULL. */
+#define HVMOP_flush_tlbs          5
+
 #endif /* __XEN_PUBLIC_HVM_HVM_OP_H__ */

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

<Prev in Thread] Current Thread [Next in Thread>
  • [Xen-changelog] [xen-unstable] hvm: Provide an HVMOP_flush_tlbs to flush VCPU TLBs., Xen patchbot-unstable <=