aboutsummaryrefslogtreecommitdiffstats
path: root/kernel/inode.c
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2004-06-21 09:45:30 +0000
committerMiklos Szeredi <miklos@szeredi.hu>2004-06-21 09:45:30 +0000
commit2778f6cf5d27e40337f163f476fac8f0ffec1130 (patch)
treee7c45e75410a43696fc7dce6926ba166b6b06d97 /kernel/inode.c
parented62d86dc82e1c729aa8cc95d6d1e5a743e4a2a7 (diff)
downloadlibfuse-2778f6cf5d27e40337f163f476fac8f0ffec1130.tar.gz
fixes
Diffstat (limited to 'kernel/inode.c')
-rw-r--r--kernel/inode.c23
1 files changed, 14 insertions, 9 deletions
diff --git a/kernel/inode.c b/kernel/inode.c
index d04d636..83ac407 100644
--- a/kernel/inode.c
+++ b/kernel/inode.c
@@ -44,24 +44,29 @@ static void fuse_read_inode(struct inode *inode)
/* No op */
}
+void fuse_send_forget(struct fuse_conn *fc, struct fuse_req *req, ino_t ino,
+ int version)
+{
+ struct fuse_forget_in *inarg = &req->misc.forget_in;
+ inarg->version = version;
+ req->in.h.opcode = FUSE_FORGET;
+ req->in.h.ino = ino;
+ req->in.numargs = 1;
+ req->in.args[0].size = sizeof(struct fuse_forget_in);
+ req->in.args[0].value = inarg;
+ request_send_noreply(fc, req);
+}
+
static void fuse_clear_inode(struct inode *inode)
{
struct fuse_conn *fc = INO_FC(inode);
struct fuse_req *req;
- struct fuse_forget_in *inarg = NULL;
if (fc == NULL)
return;
req = fuse_get_request_nonint(fc);
- inarg = &req->misc.forget_in;
- inarg->version = inode->i_version;
- req->in.h.opcode = FUSE_FORGET;
- req->in.h.ino = inode->i_ino;
- req->in.numargs = 1;
- req->in.args[0].size = sizeof(struct fuse_forget_in);
- req->in.args[0].value = inarg;
- request_send_noreply(fc, req);
+ fuse_send_forget(fc, req, inode->i_ino, inode->i_version);
}
static void fuse_put_super(struct super_block *sb)