From 9c91298ccfcdf32ede0d783a5d1f3545592488ae Mon Sep 17 00:00:00 2001 From: Balazs Gerofi Date: Tue, 5 Dec 2017 17:14:08 +0900 Subject: [PATCH] do_munmap(): hook to HFI1 deferred unmap --- kernel/syscall.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/kernel/syscall.c b/kernel/syscall.c index d20e7a34..89e6fd1e 100644 --- a/kernel/syscall.c +++ b/kernel/syscall.c @@ -1290,6 +1290,19 @@ int do_munmap(void *addr, size_t len) int error; int ro_freed; + /* + * TODO: do call back registration for address space changes.. + */ + { + extern int hfi1_user_exp_rcv_overlapping( + unsigned long start, unsigned long end); + unsigned long start = (unsigned long)addr; + + if (hfi1_user_exp_rcv_overlapping(start, start + len)) { + return 0; + } + } + begin_free_pages_pending(); error = remove_process_memory_range(cpu_local_var(current)->vm, (intptr_t)addr, (intptr_t)addr+len, &ro_freed);