From ed8ff1ff9c4c0f847ffc2ab4624bd999539a0890 Mon Sep 17 00:00:00 2001 From: dzwdz Date: Thu, 11 Jul 2024 21:43:50 +0200 Subject: kernel: start cleaning up VfsRequest * I'm being more strict about the linked list state to hopefully ensure I'm not leaking any references. * vfsreq_create was renamed to vfsreq_dispatchcopy as that name feels more clear. It copies its argument, and dispatches it. * Requests for user backends are now handled more like requests for kernel backends - there's an accept() function that accepts a request. --- src/cmd/tests/kernel/fs.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/cmd/tests/kernel/fs.c') diff --git a/src/cmd/tests/kernel/fs.c b/src/cmd/tests/kernel/fs.c index 6d4f4f4..a19f3fb 100644 --- a/src/cmd/tests/kernel/fs.c +++ b/src/cmd/tests/kernel/fs.c @@ -12,14 +12,14 @@ static void test_unfinished_req(void) { // TODO make a similar test with all 0s passed to fs_wait struct ufs_request res; _sys_fs_wait(NULL, 0, &res); - // TODO second fs_wait exit(0); } else { test(0 <= h); test(_sys_mount(h, "/", 1) == 0); - int ret = _sys_open("/", 1, 0); - test(ret < 0); - // the handler quits while handling that call - but this syscall should return anyways + /* the handler quits while handling this call */ + test(_sys_open("/", 1, 0) == -EPIPE); + /* now it's dead, at this shouldn't hang either */ + test(_sys_open("/", 1, 0) == -EPIPE); } } -- cgit v1.2.3