@@ -1210,6 +1210,7 @@ int xc_readconsolering(xc_interface *xch,
int clear, int incremental, uint32_t *pindex);
int xc_send_debug_keys(xc_interface *xch, char *keys);
+int xc_set_parameters(xc_interface *xch, char *params);
typedef xen_sysctl_physinfo_t xc_physinfo_t;
typedef xen_sysctl_cputopo_t xc_cputopo_t;
@@ -187,6 +187,26 @@ int xc_send_debug_keys(xc_interface *xch, char *keys)
return ret;
}
+int xc_set_parameters(xc_interface *xch, char *params)
+{
+ int ret, len = strlen(params);
+ DECLARE_SYSCTL;
+ DECLARE_HYPERCALL_BOUNCE(params, len, XC_HYPERCALL_BUFFER_BOUNCE_IN);
+
+ if ( xc_hypercall_bounce_pre(xch, params) )
+ return -1;
+
+ sysctl.cmd = XEN_SYSCTL_set_parameter;
+ set_xen_guest_handle(sysctl.u.set_parameter.params, params);
+ sysctl.u.set_parameter.size = len;
+
+ ret = do_sysctl(xch, &sysctl);
+
+ xc_hypercall_bounce_post(xch, params);
+
+ return ret;
+}
+
int xc_physinfo(xc_interface *xch,
xc_physinfo_t *put_info)
{