Mercurial > hg > CbC > CbC_xv6
changeset 372:6fc38a3f38f9
fix return val
author | anatofuz |
---|---|
date | Mon, 06 Jul 2020 11:25:47 +0900 |
parents | 96655612f48c |
children | 097a58a16a04 |
files | src/impl/SyscallDispatchImpl.cbc src/trap.cbc |
diffstat | 2 files changed, 4 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/src/impl/SyscallDispatchImpl.cbc Sun Jul 05 15:18:02 2020 +0900 +++ b/src/impl/SyscallDispatchImpl.cbc Mon Jul 06 11:25:47 2020 +0900 @@ -77,8 +77,8 @@ struct SyscallDispatch* syscall_dispatch = new SyscallDispatch(); struct SyscallDispatchImpl* syscall_dispatch_impl = new SyscallDispatchImpl(); syscall_dispatch->syscall_dispatch = (union Data*)syscall_dispatch_impl; - syscall_dispatch->dispatch = C_dispatchSyscallImpl; - return syscall; + syscall_dispatch->dispatch = C_dispatchSyscallDispatchImpl; + return syscall_dispatch; } __code dispatchSyscallDispatchImpl(struct SyscallDispatchImpl* syscall_dispatch, __code next(...)) { @@ -97,7 +97,7 @@ proc->cbc_arg.cbc_console_arg.num = num; __code *syscalls = kcontext->syscalls; - goto (cbccodes[num])(kernelRet->cbc_return); + goto (cbccodes[num])(cbc_ret); //goto meta(&proc->cbc_context, cbccodes[num]); }
--- a/src/trap.cbc Sun Jul 05 15:18:02 2020 +0900 +++ b/src/trap.cbc Mon Jul 06 11:25:47 2020 +0900 @@ -15,6 +15,7 @@ extern __code exit(void); extern SyscallDispatch* createSyscallDispatchImpl(struct Context*); +extern KernelRet* createKernelRetImpl(struct Context*); __ncode cbc_swi_handler(struct trapframe* r) { struct Context* kernel = &kernel_context->context;