Revert "x86/hvm: allow guest_request vm_events coming from userspace"
authorJan Beulich <jbeulich@suse.com>
Fri, 25 Aug 2017 12:12:58 +0000 (14:12 +0200)
committerJan Beulich <jbeulich@suse.com>
Fri, 25 Aug 2017 12:12:58 +0000 (14:12 +0200)
This reverts commit 38f21760972a4405d47e4936c91071e073c834c6,
which breaks the build on ARM.

tools/libxc/include/xenctrl.h
tools/libxc/xc_monitor.c
xen/arch/x86/hvm/hypercall.c
xen/common/monitor.c
xen/include/asm-x86/domain.h
xen/include/public/domctl.h

index 2052ce722ab4bc143d47e7a55b8eef3d6b97b4dc..c7710b8f36303ba7eae0a8184eb2b67b37364104 100644 (file)
@@ -2021,7 +2021,7 @@ int xc_monitor_software_breakpoint(xc_interface *xch, domid_t domain_id,
 int xc_monitor_descriptor_access(xc_interface *xch, domid_t domain_id,
                                  bool enable);
 int xc_monitor_guest_request(xc_interface *xch, domid_t domain_id,
-                             bool enable, bool sync, bool allow_userspace);
+                             bool enable, bool sync);
 int xc_monitor_debug_exceptions(xc_interface *xch, domid_t domain_id,
                                 bool enable, bool sync);
 int xc_monitor_cpuid(xc_interface *xch, domid_t domain_id, bool enable);
index a67782009d2a5ac3efb75eb8ac16c424fa40827b..b44ce93be71ebfe130d1be46dbed305e337f1804 100644 (file)
@@ -147,7 +147,7 @@ int xc_monitor_descriptor_access(xc_interface *xch, domid_t domain_id,
 }
 
 int xc_monitor_guest_request(xc_interface *xch, domid_t domain_id, bool enable,
-                             bool sync, bool allow_userspace)
+                             bool sync)
 {
     DECLARE_DOMCTL;
 
@@ -157,7 +157,6 @@ int xc_monitor_guest_request(xc_interface *xch, domid_t domain_id, bool enable,
                                     : XEN_DOMCTL_MONITOR_OP_DISABLE;
     domctl.u.monitor_op.event = XEN_DOMCTL_MONITOR_EVENT_GUEST_REQUEST;
     domctl.u.monitor_op.u.guest_request.sync = sync;
-    domctl.u.monitor_op.u.guest_request.allow_userspace = enable ? allow_userspace : false;
 
     return do_domctl(xch, &domctl);
 }
index 5742dd1797b47d98e137fa72fea1c3c002ec4dff..e7238ce2935c7f02e0f51bf15ba80d7910d97258 100644 (file)
@@ -155,11 +155,6 @@ int hvm_hypercall(struct cpu_user_regs *regs)
         /* Fallthrough to permission check. */
     case 4:
     case 2:
-        if ( currd->arch.monitor.guest_request_userspace_enabled &&
-            eax == __HYPERVISOR_hvm_op &&
-            (mode == 8 ? regs->rdi : regs->ebx) == HVMOP_guest_request_vm_event )
-            break;
-
         if ( unlikely(hvm_get_cpl(curr)) )
         {
     default:
index 20463e01a3a1260127f820080cb52b24cf769afa..451f42f6c3e5f0e89c8f55258d034300b84bc657 100644 (file)
@@ -75,7 +75,6 @@ int monitor_domctl(struct domain *d, struct xen_domctl_monitor_op *mop)
         domain_pause(d);
         d->monitor.guest_request_sync = mop->u.guest_request.sync;
         d->monitor.guest_request_enabled = requested_status;
-        d->arch.monitor.guest_request_userspace_enabled = mop->u.guest_request.allow_userspace;
         domain_unpause(d);
         break;
     }
index de0250725a30a823fb6bfd90d64406b98fff919d..c10522b7f552bbd1e9f46929233da083602d80af 100644 (file)
@@ -396,16 +396,15 @@ struct arch_domain
 
     /* Arch-specific monitor options */
     struct {
-        unsigned int write_ctrlreg_enabled                                 : 4;
-        unsigned int write_ctrlreg_sync                                    : 4;
-        unsigned int write_ctrlreg_onchangeonly                            : 4;
-        unsigned int singlestep_enabled                                    : 1;
-        unsigned int software_breakpoint_enabled                           : 1;
-        unsigned int debug_exception_enabled                               : 1;
-        unsigned int debug_exception_sync                                  : 1;
-        unsigned int cpuid_enabled                                         : 1;
-        unsigned int descriptor_access_enabled                             : 1;
-        unsigned int guest_request_userspace_enabled                       : 1;
+        unsigned int write_ctrlreg_enabled       : 4;
+        unsigned int write_ctrlreg_sync          : 4;
+        unsigned int write_ctrlreg_onchangeonly  : 4;
+        unsigned int singlestep_enabled          : 1;
+        unsigned int software_breakpoint_enabled : 1;
+        unsigned int debug_exception_enabled     : 1;
+        unsigned int debug_exception_sync        : 1;
+        unsigned int cpuid_enabled               : 1;
+        unsigned int descriptor_access_enabled   : 1;
         struct monitor_msr_bitmap *msr_bitmap;
         uint64_t write_ctrlreg_mask[4];
     } monitor;
index 984020e73eccfdc4d83d6db30fa78520ab6cebfe..0669c3161cd3e92ce250d8e63acb20353478b8cf 100644 (file)
@@ -1124,7 +1124,6 @@ struct xen_domctl_monitor_op {
         struct {
             /* Pause vCPU until response */
             uint8_t sync;
-            uint8_t allow_userspace;
         } guest_request;
 
         struct {