[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] libxl: ocaml: guard x86-specific functions behind an ifdef
The various cpuid functions are not available on ARM, so this makes them raise an OCaml exception. Omitting the functions completely them results in a link failure in oxenstored due to the missing symbols, so this is preferable to the much bigger patch that would result from adding conditional compilation into the OCaml interfaces. Signed-off-by: Anil Madhavapeddy <anil@xxxxxxxxxx> --- tools/ocaml/libs/xc/xenctrl_stubs.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/tools/ocaml/libs/xc/xenctrl_stubs.c b/tools/ocaml/libs/xc/xenctrl_stubs.c index f5cf0ed..76864cc 100644 --- a/tools/ocaml/libs/xc/xenctrl_stubs.c +++ b/tools/ocaml/libs/xc/xenctrl_stubs.c @@ -714,6 +714,7 @@ CAMLprim value stub_xc_domain_cpuid_set(value xch, value domid, { CAMLparam4(xch, domid, input, config); CAMLlocal2(array, tmp); +#if defined(__i386__) || defined(__x86_64__) int r; unsigned int c_input[2]; char *c_config[4], *out_config[4]; @@ -742,17 +743,24 @@ CAMLprim value stub_xc_domain_cpuid_set(value xch, value domid, c_input, (const char **)c_config, out_config); if (r < 0) failwith_xc(_H(xch)); +#else + failwith_xc(_H(xch)); +#endif CAMLreturn(array); } CAMLprim value stub_xc_domain_cpuid_apply_policy(value xch, value domid) { CAMLparam2(xch, domid); +#if defined(__i386__) || defined(__x86_64__) int r; r = xc_cpuid_apply_policy(_H(xch), _D(domid)); if (r < 0) failwith_xc(_H(xch)); +#else + failwith_xc(_H(xch)); +#endif CAMLreturn(Val_unit); } @@ -760,6 +768,7 @@ CAMLprim value stub_xc_cpuid_check(value xch, value input, value config) { CAMLparam3(xch, input, config); CAMLlocal3(ret, array, tmp); +#if defined(__i386__) || defined(__x86_64__) int r; unsigned int c_input[2]; char *c_config[4], *out_config[4]; @@ -792,6 +801,9 @@ CAMLprim value stub_xc_cpuid_check(value xch, value input, value config) Store_field(ret, 0, Val_bool(r)); Store_field(ret, 1, array); +#else + failwith_xc(_H(xch)); +#endif CAMLreturn(ret); } -- 1.8.1.2 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |