From: <sv...@va...> - 2015-06-28 16:41:13
|
Author: bart Date: Sun Jun 28 17:41:06 2015 New Revision: 15373 Log: xen: Handle XEN_DOMCTL_{test_assign,assign,deassign}_device Signed-off-by: Ian Campbell <ian...@ci...> Cc: Andrew Cooper <and...@ci... Modified: trunk/coregrind/m_syswrap/syswrap-xen.c trunk/include/vki/vki-xen-domctl.h Modified: trunk/coregrind/m_syswrap/syswrap-xen.c ============================================================================== --- trunk/coregrind/m_syswrap/syswrap-xen.c (original) +++ trunk/coregrind/m_syswrap/syswrap-xen.c Sun Jun 28 17:41:06 2015 @@ -663,6 +663,16 @@ __PRE_XEN_DOMCTL_READ(set_address_size, address_size, size); break; + case VKI_XEN_DOMCTL_test_assign_device: + __PRE_XEN_DOMCTL_READ(test_assign_device, assign_device, machine_sbdf); + break; + case VKI_XEN_DOMCTL_assign_device: + __PRE_XEN_DOMCTL_READ(assign_device, assign_device, machine_sbdf); + break; + case VKI_XEN_DOMCTL_deassign_device: + __PRE_XEN_DOMCTL_READ(deassign_device, assign_device, machine_sbdf); + break; + case VKI_XEN_DOMCTL_settscinfo: __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.tsc_mode); __PRE_XEN_DOMCTL_READ(settscinfo, tsc_info, info.gtsc_khz); @@ -1433,6 +1443,9 @@ case VKI_XEN_DOMCTL_max_mem: case VKI_XEN_DOMCTL_setvcpuextstate: case VKI_XEN_DOMCTL_set_address_size: + case VKI_XEN_DOMCTL_test_assign_device: + case VKI_XEN_DOMCTL_assign_device: + case VKI_XEN_DOMCTL_deassign_device: case VKI_XEN_DOMCTL_settscinfo: case VKI_XEN_DOMCTL_ioport_permission: case VKI_XEN_DOMCTL_hypercall_init: Modified: trunk/include/vki/vki-xen-domctl.h ============================================================================== --- trunk/include/vki/vki-xen-domctl.h (original) +++ trunk/include/vki/vki-xen-domctl.h Sun Jun 28 17:41:06 2015 @@ -386,6 +386,10 @@ vki_uint32_t size; }; +struct vki_xen_domctl_assign_device { + vki_uint32_t machine_sbdf; /* machine PCI ID of assigned device */ +}; + struct vki_xen_domctl_debug_op { vki_uint32_t op; /* IN */ vki_uint32_t vcpu; /* IN */ @@ -463,7 +467,7 @@ struct vki_xen_domctl_address_size address_size; //struct vki_xen_domctl_sendtrigger sendtrigger; //struct vki_xen_domctl_get_device_group get_device_group; - //struct vki_xen_domctl_assign_device assign_device; + struct vki_xen_domctl_assign_device assign_device; //struct vki_xen_domctl_bind_pt_irq bind_pt_irq; //struct vki_xen_domctl_memory_mapping memory_mapping; //struct vki_xen_domctl_ioport_mapping ioport_mapping; |