Age | Commit message (Collapse) | Author | |
---|---|---|---|
2023-01-25 | style: typedef structs, shorter namespaces | dzwdz | |
I've wanted to do this for a while, and since I've just had a relatively large refactor commit (pcpy), this is as good of a time as any. Typedefing structs was mostly inspired by Plan 9's coding style. It makes some lines of code much shorter at basically no expense. Everything related to userland kept old-style struct definitions, so as not to force that style onto other people. I also considered changing SCREAMING_ENUM_FIELDS to NicerLookingCamelcase, but I didn't, just in case that'd be confusing. | |||
2023-01-11 | kernel: return EPIPE when fs_waiting on a dead filesystem | dzwdz | |
2023-01-06 | kernel: basic procfs | dzwdz | |
2022-10-02 | syscall/open: add the full suite of READ/WRITE flags | dzwdz | |
2022-08-28 | kernel/vfs: minor vfs_request / vfs_root_register rework | dzwdz | |
* changed vfs_root_register's name because the _mount didn't add anything * removed the old pointless vfs_backend_tryaccept calls from drivers * because of that, i could remove the vfs_backend globals * replaced the horrible BACKEND_KERN macro * all vfs_backends are now stored on the heap | |||
2022-08-08 | kernel/backend: remove the kern.ready() method | dzwdz | |
2022-08-03 | kernel: reuse a single allocation for all vfs_requests of a process | dzwdz | |
$ iostress 32 512 0 > /vtty # before 512 calls, 0 bytes. avg 121133 $ iostress 32 512 0 > /vtty # after 512 calls, 0 bytes. avg 103540 103540/121133 = ~85% I think the tiny bit of added complexity is worth it here. | |||
2022-07-26 | shared: move some headers from shared/ to camellia/ | dzwdz | |
2022-07-16 | amd64: back at the shell! | dzwdz | |
2022-07-14 | kernel/driver/serial: allow writes even with pending reads | dzwdz | |
2022-07-08 | syscall/fs_respond: get the file id from the buf argument | dzwdz | |
Previously, file ids could only be positive integers, so their range was 31 bits - not enough to represent the entire memory. Now, pointers can be safely used as file ids. | |||
2022-07-07 | kernel: add the vfsreq_finish_short shorthand function | dzwdz | |
2022-07-07 | kernel/vfs: delegate support in _syscall_fs_respond! | dzwdz | |
this is big in terms of speed, it avoids a lot of unnecessary context switches | |||
2022-06-29 | kernel/vfs: add the OPEN_CREATE flag | dzwdz | |
2022-05-05 | kernel: each driver registers its own mounts | dzwdz | |
2022-05-05 | kernel: syscalls now have to explicitly save the return value | dzwdz | |
thus they can opt out of doing that so the calls which might return immediately but can return later don't have to both regs_savereturn and return to the caller. and because of that, the return values of a lot of VFS things have just got way saner | |||
2022-05-05 | kernel: ps2 driver is now a separate backend | dzwdz | |
2022-05-05 | kernel/vfs: refactor vfs_backend to allow multiple kernel backends | dzwdz | |
2022-05-05 | kernel/vfs: rename the vfsreq funcs, merge vfsreq_finish & vfsreq_cancel | dzwdz | |
2022-05-04 | kernel: refcount vfs_backend | dzwdz | |
what a mess | |||
2022-04-16 | kernel/vfs: store the queue in `vfs_request` itself | dzwdz | |
2022-04-16 | kernel/vfs: refactor `vfs_request_accept` into `vfs_backend_accept` | dzwdz | |
handling the backend queue makes more sense here than in the syscall implementation. it's also just overall cleaner | |||
2022-04-15 | kernel/vfs: don't hang on orphaned vfs calls | dzwdz | |
2022-04-14 | kernel: port init's `printf` implementation | dzwdz | |
2022-04-12 | kernel: make all sizes unsigned, sort out the sign mess | dzwdz | |
2022-04-09 | kernel/vfs: prevent the vfs functions from switching processes | dzwdz | |
2022-04-09 | kernel: `vfs_request_accept` now doesn't switch processes | dzwdz | |
2021-09-20 | add an offset parameter to read() and write() | dzwdz | |
2021-09-20 | add some missing includes to `kernel/vfs/request.h` | dzwdz | |
2021-09-16 | implement output from vfs calls | dzwdz | |
2021-09-12 | move `enum vs_operation` to shared/flags.h | dzwdz | |
2021-09-12 | allow vfs_request_finish to return | dzwdz | |
thanks to this, the fs provider can continue executing until the next fs_wait() call. that should speed things up a bit | |||
2021-09-12 | vfs_request refactor pt2 | dzwdz | |
2021-09-12 | vfs request refactor pt1 | dzwdz | |