mirror of
https://github.com/genodelabs/genode.git
synced 2025-03-10 22:44:30 +00:00
parent
d5d891a227
commit
9508f397a2
@ -8,6 +8,7 @@ SRC_CC = main.cc test.cc exception.cc file.cc dependency.cc debug.cc \
|
|||||||
shared_object.cc
|
shared_object.cc
|
||||||
SRC_S = jmp_slot.s
|
SRC_S = jmp_slot.s
|
||||||
INC_DIR += $(DIR)/include
|
INC_DIR += $(DIR)/include
|
||||||
|
INC_DIR += $(BASE_DIR)/src/include
|
||||||
LD_OPT += -Bsymbolic-functions --version-script=$(DIR)/symbol.map
|
LD_OPT += -Bsymbolic-functions --version-script=$(DIR)/symbol.map
|
||||||
|
|
||||||
ifneq ($(filter linux, $(SPECS)),)
|
ifneq ($(filter linux, $(SPECS)),)
|
||||||
|
@ -12,6 +12,7 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#include <linker.h>
|
#include <linker.h>
|
||||||
|
#include <base/internal/page_size.h>
|
||||||
|
|
||||||
#include <base/allocator_avl.h>
|
#include <base/allocator_avl.h>
|
||||||
#include <os/attached_rom_dataspace.h>
|
#include <os/attached_rom_dataspace.h>
|
||||||
@ -82,8 +83,12 @@ class Linker::Rm_area : public Rm_connection
|
|||||||
|
|
||||||
if (addr && (_range.alloc_addr(size, addr).is_error()))
|
if (addr && (_range.alloc_addr(size, addr).is_error()))
|
||||||
throw Region_conflict();
|
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();
|
throw Region_conflict();
|
||||||
|
}
|
||||||
|
|
||||||
return addr;
|
return addr;
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user