From fc3212ce067339d8fe8f51fbbb4f13e08e8d0ccf Mon Sep 17 00:00:00 2001 From: Sergiu Moga Date: Tue, 16 Mar 2021 22:49:39 +0200 Subject: [PATCH] lib/ukmmap: Register `mremap` to syscall_shim Register `mremap` system call to syscall_shim library. Signed-off-by: Sergiu Moga Reviewed-by: Cristian Vijelie Tested-by: Unikraft CI GitHub-Pull-Request: #155 --- lib/ukmmap/Makefile.uk | 1 + lib/ukmmap/exportsyms.uk | 2 ++ lib/ukmmap/mmap.c | 8 ++++++++ 3 files changed, 11 insertions(+) diff --git a/lib/ukmmap/Makefile.uk b/lib/ukmmap/Makefile.uk index 9975daff4..19a1e1c19 100644 --- a/lib/ukmmap/Makefile.uk +++ b/lib/ukmmap/Makefile.uk @@ -3,3 +3,4 @@ $(eval $(call addlib_s,libukmmap,$(CONFIG_LIBUKMMAP))) LIBUKMMAP_SRCS-y += $(LIBUKMMAP_BASE)/mmap.c UK_PROVIDED_SYSCALLS-$(CONFIG_LIBUKMMAP) += mmap-6 munmap-2 madvise-3 +UK_PROVIDED_SYSCALLS-$(CONFIG_LIBUKMMAP) += mremap-5 diff --git a/lib/ukmmap/exportsyms.uk b/lib/ukmmap/exportsyms.uk index 794b9a412..15a970bad 100644 --- a/lib/ukmmap/exportsyms.uk +++ b/lib/ukmmap/exportsyms.uk @@ -8,3 +8,5 @@ mremap madvise uk_syscall_e_madvise uk_syscall_r_madvise +uk_syscall_e_mremap +uk_syscall_r_mremap diff --git a/lib/ukmmap/mmap.c b/lib/ukmmap/mmap.c index c95e2fd94..a7af0b997 100644 --- a/lib/ukmmap/mmap.c +++ b/lib/ukmmap/mmap.c @@ -170,11 +170,19 @@ UK_SYSCALL_DEFINE(int, munmap, void*, addr, size_t, len) return 0; } +UK_LLSYSCALL_R_DEFINE(int, mremap, void*, old_address, size_t, old_size, + size_t, new_size, int, flags, unsigned long, arg) +{ + return 0; +} + +#if UK_LIBC_SYSCALLS void *mremap(void *old_address __unused, size_t old_size __unused, size_t new_size __unused, int flags __unused, ...) { return NULL; } +#endif UK_SYSCALL_R_DEFINE(int, madvise, void*, addr, size_t, length, int, advice) { -- 2.39.5