diff options
| author | Kimplul <kimi.h.kuparinen@gmail.com> | 2024-11-02 18:58:13 +0200 |
|---|---|---|
| committer | Kimplul <kimi.h.kuparinen@gmail.com> | 2024-11-02 18:58:13 +0200 |
| commit | 5890df7bf838a5a912465a1bba02e5d8cf34e33c (patch) | |
| tree | 48c17acfc5ed2b44bff817b00123288098273ecc /src/uapi/ipc.c | |
| parent | 5531e2eaaa2fd1dd282dba2fb5bc10e09dfec5e0 (diff) | |
| download | kmi-5890df7bf838a5a912465a1bba02e5d8cf34e33c.tar.gz kmi-5890df7bf838a5a912465a1bba02e5d8cf34e33c.zip | |
allow skipping some cache flushes in proc
Diffstat (limited to 'src/uapi/ipc.c')
| -rw-r--r-- | src/uapi/ipc.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/uapi/ipc.c b/src/uapi/ipc.c index 3f94e63..e323478 100644 --- a/src/uapi/ipc.c +++ b/src/uapi/ipc.c @@ -61,7 +61,7 @@ static __inline void enter_rpc(struct tcb *t, struct tcb *r, struct sys_ret a, /* try to get rid of args as fast as possible to free up registers for * later use */ - set_ret(t, 6, a); + set_ret_fast(t, a); if (!is_set(flags, IPC_TAIL)) { ctx->rpc_stack = t->rpc_stack; @@ -79,7 +79,7 @@ static __inline void enter_rpc(struct tcb *t, struct tcb *r, struct sys_ret a, } - set_stack(t, rpc_stack - BASE_PAGE_SIZE); + set_stack_fast(t, rpc_stack - BASE_PAGE_SIZE); clone_uvmem(r->proc.vmem, t->rpc.vmem); flush_tlb_full(); @@ -203,7 +203,7 @@ static void leave_rpc(struct tcb *t, struct sys_ret a) /* again, get rid of args as fast as possible */ if (!ctx->notify) - set_ret(t, 6, a); + set_ret_fast(t, a); struct tcb *r = get_tcb(ctx->pid); while (!r || !is_proc(r) || zombie(r)) { |
