[PATCH] v9fs: new multiplexer implementation
New multiplexer implementation. Decreases the number of kernel threads required. Better handling when the user process receives a signal. Signed-off-by: Latchesar Ionkov <lucho@ionkov.net> Cc: Eric Van Hensbergen <ericvh@ericvh.myip.org> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
committed by
Linus Torvalds
parent
f5ef3c105b
commit
3cf6429a26
@ -95,24 +95,21 @@ static int v9fs_dentry_validate(struct dentry *dentry, struct nameidata *nd)
|
||||
|
||||
void v9fs_dentry_release(struct dentry *dentry)
|
||||
{
|
||||
int err;
|
||||
|
||||
dprintk(DEBUG_VFS, " dentry: %s (%p)\n", dentry->d_iname, dentry);
|
||||
|
||||
if (dentry->d_fsdata != NULL) {
|
||||
struct list_head *fid_list = dentry->d_fsdata;
|
||||
struct v9fs_fid *temp = NULL;
|
||||
struct v9fs_fid *current_fid = NULL;
|
||||
struct v9fs_fcall *fcall = NULL;
|
||||
|
||||
list_for_each_entry_safe(current_fid, temp, fid_list, list) {
|
||||
if (v9fs_t_clunk
|
||||
(current_fid->v9ses, current_fid->fid, &fcall))
|
||||
dprintk(DEBUG_ERROR, "clunk failed: %s\n",
|
||||
FCALL_ERROR(fcall));
|
||||
err = v9fs_t_clunk(current_fid->v9ses, current_fid->fid);
|
||||
|
||||
v9fs_put_idpool(current_fid->fid,
|
||||
¤t_fid->v9ses->fidpool);
|
||||
if (err < 0)
|
||||
dprintk(DEBUG_ERROR, "clunk failed: %d\n", err);
|
||||
|
||||
kfree(fcall);
|
||||
v9fs_fid_destroy(current_fid);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user