summaryrefslogtreecommitdiff
path: root/src/kernel/vfs/request.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/kernel/vfs/request.h')
-rw-r--r--src/kernel/vfs/request.h48
1 files changed, 24 insertions, 24 deletions
diff --git a/src/kernel/vfs/request.h b/src/kernel/vfs/request.h
index 4d7fa01..182202c 100644
--- a/src/kernel/vfs/request.h
+++ b/src/kernel/vfs/request.h
@@ -1,38 +1,38 @@
#pragma once
-#include <camellia/types.h>
+#include <kernel/types.h>
#include <stdbool.h>
#include <stddef.h>
-// describes something which can act as an access function
-struct vfs_backend {
+/* describes something which can act as an access function */
+struct VfsBackend {
/* amount of using references
- * struct vfs_mount
- * struct vfs_request
- * struct handle
+ * VfsMount
+ * VfsReq
+ * Handle
* once it reaches 0, it'll never increase */
- size_t usehcnt; /* struct vfs_mount */
+ size_t usehcnt; /* VfsMount */
/* amount of providing references
- * struct process
+ * Proc
* 0 - orphaned, will never increase */
size_t provhcnt;
- struct vfs_request *queue;
+ VfsReq *queue;
bool is_user;
union {
struct {
- struct process *handler;
+ Proc *handler;
} user;
struct {
- void (*accept)(struct vfs_request *);
- void (*cleanup)(struct vfs_backend *);
+ void (*accept)(VfsReq *);
+ void (*cleanup)(VfsBackend *);
void *data;
} kern;
};
};
-// describes an in-process vfs call
-struct vfs_request {
- enum vfs_operation type;
+/* describes an in-progress vfs call */
+struct VfsReq {
+ enum vfs_op type;
struct {
bool kern; // if false: use .buf ; if true: use .buf_kern
union {
@@ -54,26 +54,26 @@ struct vfs_request {
/* if caller != NULL, owned by it - don't free, the allocation will be reused
* if caller == NULL, free on finish */
- struct process *caller;
- struct vfs_backend *backend;
+ Proc *caller;
+ VfsBackend *backend;
- struct vfs_request *queue_next;
- struct vfs_request *postqueue_next; /* used by kernel backends */
+ VfsReq *queue_next;
+ VfsReq *postqueue_next; /* used by kernel backends */
/* only one of these queues is in use at a given moment, they could
* be merged into a single field */
};
/** Assigns the vfs_request to the caller, and dispatches the call */
-void vfsreq_create(struct vfs_request);
-void vfsreq_finish(struct vfs_request*, char __user *stored, long ret, int flags, struct process *handler);
+void vfsreq_create(VfsReq);
+void vfsreq_finish(VfsReq*, char __user *stored, long ret, int flags, Proc *handler);
-static inline void vfsreq_finish_short(struct vfs_request *req, long ret) {
+static inline void vfsreq_finish_short(VfsReq *req, long ret) {
vfsreq_finish(req, (void __user *)ret, ret, 0, NULL);
}
/** Try to accept an enqueued request */
-void vfs_backend_tryaccept(struct vfs_backend *);
+void vfs_backend_tryaccept(VfsBackend *);
// TODO the bool arg is confusing. maybe this should just be a function
// that verified the refcount and potentially frees the backend
-void vfs_backend_refdown(struct vfs_backend *, bool use);
+void vfs_backend_refdown(VfsBackend *, bool use);