Using sys_suspend syscall to halt a core and resume later.
authorGerd Zellweger <mail@gerdzellweger.com>
Wed, 18 Dec 2013 15:46:25 +0000 (16:46 +0100)
committerGerd Zellweger <mail@gerdzellweger.com>
Tue, 14 Oct 2014 06:47:41 +0000 (08:47 +0200)
commitfac688a5e7f5079b53979985e477f8e42e77c2e9
treef9f7a55930b3bbc1d072be684831157898170a68
parent29e77526c84ebda9ed50a193dd9fb6129d9e2555
Using sys_suspend syscall to halt a core and resume later.

Also adding user-level part where we do something similar to sys_yield, ie. save
the context for enabled dispatcher while disabled and set the dispatcher to
enabled again in the kernel. This ensures we will jump back to the right part
when scheduling without ever returning from the syscall.
include/barrelfish_kpi/syscalls.h
kernel/arch/x86_64/syscall.c
kernel/include/syscall.h
kernel/syscall.c
lib/barrelfish/arch/x86_64/dispatch.c
lib/barrelfish/arch/x86_64/syscalls.c
usr/monitor/inter.c