From 8e0b25372738c0c1736a8537dd26406c7a5a1906 Mon Sep 17 00:00:00 2001 From: Pau Ruiz Safont Date: Wed, 19 Mar 2025 14:29:19 +0000 Subject: [PATCH] xenctrlext: do not truncate the amount of memory in claims to 32 bits MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Int_val truncates values to a 32-bit int. Instead use Long_val, which does not suffer from this. This is a problem when claiming more than ≈ 9706GiBs for a domain. Signed-off-by: Pau Ruiz Safont --- ocaml/xenopsd/c_stubs/xenctrlext_stubs.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ocaml/xenopsd/c_stubs/xenctrlext_stubs.c b/ocaml/xenopsd/c_stubs/xenctrlext_stubs.c index cbf2af76145..0e427548ed4 100644 --- a/ocaml/xenopsd/c_stubs/xenctrlext_stubs.c +++ b/ocaml/xenopsd/c_stubs/xenctrlext_stubs.c @@ -678,7 +678,7 @@ CAMLprim value stub_xenctrlext_domain_claim_pages(value xch_val, value domid_val int retval, the_errno; xc_interface* xch = xch_of_val(xch_val); uint32_t domid = Int_val(domid_val); - unsigned long nr_pages = Int_val(nr_pages_val); + unsigned long nr_pages = Long_val(nr_pages_val); caml_release_runtime_system(); retval = xc_domain_claim_pages(xch, domid, nr_pages);