mirror of
https://github.com/xen-project/xen.git
synced 2026-10-28 18:21:39 +01:00
caml_alloc() takes units of Wsize (word size), not bytes. As a consequence, we're allocating 4 or 8 times too much memory. Ocaml has a helper, Wsize_bsize(), but it truncates cases which aren't an exact multiple. Use a BUILD_BUG_ON() to cover the potential for truncation, as there's no rounding-up form of the helper. Fixes:8b7ce06a2d("ocaml: Add XC bindings.") Fixes:d3e649277a("ocaml: add mmap bindings implementation.") Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com> Acked-by: Christian Lindig <christian.lindig@citrix.com>
33 lines
723 B
Makefile
33 lines
723 B
Makefile
OCAML_TOPLEVEL=$(CURDIR)/../..
|
|
XEN_ROOT=$(OCAML_TOPLEVEL)/../..
|
|
include $(OCAML_TOPLEVEL)/common.make
|
|
|
|
CFLAGS += $(CFLAGS_xeninclude)
|
|
|
|
OBJS = xenmmap
|
|
INTF = $(foreach obj, $(OBJS),$(obj).cmi)
|
|
LIBS = xenmmap.cma xenmmap.cmxa
|
|
|
|
all: $(INTF) $(LIBS) $(PROGRAMS)
|
|
|
|
bins: $(PROGRAMS)
|
|
|
|
libs: $(LIBS)
|
|
|
|
xenmmap_OBJS = $(OBJS)
|
|
xenmmap_C_OBJS = xenmmap_stubs
|
|
OCAML_LIBRARY = xenmmap
|
|
|
|
.PHONY: install
|
|
install: $(LIBS) META
|
|
mkdir -p $(OCAMLDESTDIR)
|
|
$(OCAMLFIND) remove -destdir $(OCAMLDESTDIR) xenmmap
|
|
$(OCAMLFIND) install -destdir $(OCAMLDESTDIR) -ldconf ignore xenmmap META $(INTF) $(LIBS) *.a *.so *.cmx
|
|
|
|
.PHONY: uninstall
|
|
uninstall:
|
|
$(OCAMLFIND) remove -destdir $(OCAMLDESTDIR) xenmmap
|
|
|
|
include $(OCAML_TOPLEVEL)/Makefile.rules
|
|
|