diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-05-28 14:08:12 +0300 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2022-05-28 14:08:12 +0300 |
| commit | 96e5d8dc99010e2cec8bd2edf59545bd13f6f769 (patch) | |
| tree | bd3e5433c042c28707ec787cd6a133e6307d3e51 /common/proc.c | |
| parent | c5ce4978958762849083143d1fcbe694b44b5c51 (diff) | |
| download | kmi-96e5d8dc99010e2cec8bd2edf59545bd13f6f769.tar.gz kmi-96e5d8dc99010e2cec8bd2edf59545bd13f6f769.zip | |
start implementing new proc/rpc handling
+ Essentially, separate root process and remote procedure call handling.
I really should write down some documentation so I don't forget, but
essentially: All threads share a common process virtual memory, and
when a thread wants to make an rpc, it switches over to its own rpc
vmem space that is linked to the remote process.
Diffstat (limited to 'common/proc.c')
| -rw-r--r-- | common/proc.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/common/proc.c b/common/proc.c index 3f6da6d..bf8a4d1 100644 --- a/common/proc.c +++ b/common/proc.c @@ -18,7 +18,7 @@ stat_t prepare_proc(struct tcb *t, vm_t bin, vm_t interp) return ERR_INVAL; alloc_stacks(t); - prepare_thread(t); + set_thread(t, t->thread_stack_top); set_return(entry); return OK; } @@ -34,7 +34,7 @@ stat_t init_proc(void *fdt) /* set current tcb */ use_tcb(t); - use_vmem(t->b_r); + use_vmem(t->proc.vmem); /* allocate stacks after ELF file to make sure nothing of importance * clashes */ |
