aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/fuse_i.h
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/fuse_i.h')
-rw-r--r--kernel/fuse_i.h18
1 files changed, 13 insertions, 5 deletions
diff --git a/kernel/fuse_i.h b/kernel/fuse_i.h
index 7055d17..f83ac6a 100644
--- a/kernel/fuse_i.h
+++ b/kernel/fuse_i.h
@@ -113,6 +113,9 @@ struct fuse_req {
/* The request has been sent to the client */
unsigned int sent:1;
+ /* The request is preallocated */
+ unsigned int preallocated:1;
+
/* The request is finished */
unsigned int finished;
@@ -266,18 +269,23 @@ int fuse_fs_init(void);
void fuse_fs_cleanup(void);
+/**
+ * Allocate a request
+ */
+struct fuse_req *fuse_request_alloc(void);
+
/**
- * Reserve a request
+ * Free a request
*/
-struct fuse_req *fuse_get_request(struct fuse_conn *fc);
+void fuse_request_free(struct fuse_req *req);
/**
- * Reserve a request, non-iterruptable
+ * Reserve a preallocated request
*/
-struct fuse_req *fuse_get_request_nonint(struct fuse_conn *fc);
+struct fuse_req *fuse_get_request(struct fuse_conn *fc);
/**
- * Reserve a request, non-blocking
+ * Reserve a preallocated request, non-blocking
*/
struct fuse_req *fuse_get_request_nonblock(struct fuse_conn *fc);