]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
xen: syswrap XEN_HVMOP_track_dirty_vram
authorBart Van Assche <bvanassche@acm.org>
Sun, 28 Jun 2015 16:43:14 +0000 (16:43 +0000)
committerBart Van Assche <bvanassche@acm.org>
Sun, 28 Jun 2015 16:43:14 +0000 (16:43 +0000)
Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15376

coregrind/m_syswrap/syswrap-xen.c
include/vki/vki-xen-hvm.h

index 55963de0755feeb2b7bbd4d0db4209306ea1aa6a..763832a8f4146f6be73e0368095cb6fc240a60df 100644 (file)
@@ -1066,6 +1066,18 @@ PRE(hvm_op)
        PRE_XEN_HVMOP_READ(set_pci_link_route, isa_irq);
        break;
 
+   case VKI_XEN_HVMOP_track_dirty_vram: {
+       vki_xen_hvm_track_dirty_vram_t *Arg =
+           (vki_xen_hvm_track_dirty_vram_t*)ARG2;
+       PRE_XEN_HVMOP_READ(track_dirty_vram, domid);
+       PRE_XEN_HVMOP_READ(track_dirty_vram, nr);
+       if ( Arg->nr ) {
+           PRE_XEN_HVMOP_READ(track_dirty_vram, first_pfn);
+           PRE_XEN_HVMOP_READ(track_dirty_vram, dirty_bitmap);
+       }
+       break;
+   }
+
    case VKI_XEN_HVMOP_set_mem_type:
        PRE_XEN_HVMOP_READ(set_mem_type, domid);
        PRE_XEN_HVMOP_READ(set_mem_type, hvmmem_type);
index f26e039114472800d1b80d035a27552ec8c1b48d..45ef16115473c2cb34d6cbbcb13c7ad644d95ac8 100644 (file)
@@ -26,6 +26,15 @@ struct vki_xen_hvm_set_pci_link_route {
 };
 typedef struct vki_xen_hvm_set_pci_link_route vki_xen_hvm_set_pci_link_route_t;
 
+#define VKI_XEN_HVMOP_track_dirty_vram 6
+struct vki_xen_hvm_track_dirty_vram {
+    vki_xen_domid_t  domid;                          /* IN  */
+    vki_xen_uint64_aligned_t first_pfn;              /* IN  */
+    vki_xen_uint64_aligned_t nr;                     /* IN  */
+    VKI_XEN_GUEST_HANDLE_64(vki_uint8) dirty_bitmap; /* OUT */
+};
+typedef struct vki_xen_hvm_track_dirty_vram vki_xen_hvm_track_dirty_vram_t;
+
 #define VKI_XEN_HVMOP_set_mem_type 8
 struct vki_xen_hvm_set_mem_type {
     vki_xen_domid_t  domid;