diff --git a/repos/base/lib/mk/ldso.inc b/repos/base/lib/mk/ldso.inc index 46cfcce837..24a6a4477c 100644 --- a/repos/base/lib/mk/ldso.inc +++ b/repos/base/lib/mk/ldso.inc @@ -8,6 +8,7 @@ SRC_CC = main.cc test.cc exception.cc file.cc dependency.cc debug.cc \ shared_object.cc SRC_S = jmp_slot.s INC_DIR += $(DIR)/include +INC_DIR += $(BASE_DIR)/src/include LD_OPT += -Bsymbolic-functions --version-script=$(DIR)/symbol.map ifneq ($(filter linux, $(SPECS)),) diff --git a/repos/base/src/lib/ldso/file.cc b/repos/base/src/lib/ldso/file.cc index 567fae75f4..3c42844e25 100644 --- a/repos/base/src/lib/ldso/file.cc +++ b/repos/base/src/lib/ldso/file.cc @@ -12,6 +12,7 @@ */ #include +#include #include #include @@ -82,8 +83,12 @@ class Linker::Rm_area : public Rm_connection if (addr && (_range.alloc_addr(size, addr).is_error())) throw Region_conflict(); - else if (!addr && _range.alloc_aligned(size, (void **)&addr, 12).is_error()) + else if (!addr && + _range.alloc_aligned(size, (void **)&addr, + get_page_size_log2()).is_error()) + { throw Region_conflict(); + } return addr; }