From 93d8b70bf55f73d3a902ff8f88af4ffab0f37e6f Mon Sep 17 00:00:00 2001 From: Alan Cox Date: Thu, 20 Oct 2016 17:46:57 +0100 Subject: [PATCH] 68000: add a sort of vdso over the headers This lets us change the trap# and the like if we make syscalls call the stub handler, and also lets us put the signal unwinder somewhere useful Experimenting for now --- Kernel/include/kernel32.h | 1 + Kernel/platform-v68/main.c | 9 +++++++++ 2 files changed, 10 insertions(+) diff --git a/Kernel/include/kernel32.h b/Kernel/include/kernel32.h index e1c6924a..2b9cf7a8 100644 --- a/Kernel/include/kernel32.h +++ b/Kernel/include/kernel32.h @@ -20,5 +20,6 @@ extern uaddr_t pagemap_base(void); extern uint32_t ugetl(void *uaddr, int *err); extern int uputl(uint32_t val, void *uaddr); +extern void install_vdso(void); #endif diff --git a/Kernel/platform-v68/main.c b/Kernel/platform-v68/main.c index 4afbb190..7b7e84e8 100644 --- a/Kernel/platform-v68/main.c +++ b/Kernel/platform-v68/main.c @@ -59,3 +59,12 @@ arg_t _memfree(void) /* Live udata and kernel stack */ u_block udata_block; uint16_t irqstack[128]; /* Used for swapping only */ + +/* This will belong in the core 68K code once finalized */ + +void install_vdso(void) +{ + extern uint8_t *vdso; + /* Should be uput etc */ + memcpy((void *)udata.u_codebase, vdso, 0x40); +} -- 2.34.1