summaryrefslogtreecommitdiff
path: root/src/kernel/syscalls.c
diff options
context:
space:
mode:
authordzwdz2022-04-09 18:55:22 +0200
committerdzwdz2022-04-09 18:55:22 +0200
commite17137d8d74e65e3cce7c04263d73a111bae25c0 (patch)
tree3b0113bd93d3b5d562c1bf84a86d4d7efcd4fe7a /src/kernel/syscalls.c
parent6152d11ae205d4b4a9f03574cfcb0c24cb54b4b5 (diff)
kernel: `vfs_request_accept` now doesn't switch processes
Diffstat (limited to 'src/kernel/syscalls.c')
-rw-r--r--src/kernel/syscalls.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/kernel/syscalls.c b/src/kernel/syscalls.c
index daf7cac..855fad8 100644
--- a/src/kernel/syscalls.c
+++ b/src/kernel/syscalls.c
@@ -207,7 +207,7 @@ int _syscall_fs_wait(char __user *buf, int max_len, struct fs_wait_response __us
process_current->state = PS_WAITS4REQUEST;
backend->handler = process_current;
/* checking the validity of those pointers here would make
- * vfs_request_pass2handler simpler. TODO? */
+ * vfs_request_accept simpler. TODO? */
process_current->awaited_req.buf = buf;
process_current->awaited_req.max_len = max_len;
process_current->awaited_req.res = res;
@@ -216,7 +216,7 @@ int _syscall_fs_wait(char __user *buf, int max_len, struct fs_wait_response __us
// handle queued requests
struct process *queued = backend->queue;
backend->queue = queued->waits4fs.queue_next;
- vfs_request_pass2handler(&queued->waits4fs.req);
+ return vfs_request_accept(&queued->waits4fs.req);
} else {
process_switch_any();
}