summaryrefslogtreecommitdiffstats
path: root/fs/9p/mux.c
diff options
context:
space:
mode:
authorEric Van Hensbergen <ericvh@gmail.com>2005-09-09 13:04:23 -0700
committerLinus Torvalds <torvalds@g5.osdl.org>2005-09-09 13:57:57 -0700
commit322b329ab787de5f45abca9c9eabfd33bc5927e8 (patch)
tree63088ab90e6677c5c74134e7cc1cfb0e0b1eae84 /fs/9p/mux.c
parent426cc91aa651b50713d06d45e5c3c3e90cfd40d9 (diff)
[PATCH] v9fs: Support to force umount
Support for force umount Signed-off-by: Latchesar Ionkov <lucho@ionkov.net> Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'fs/9p/mux.c')
-rw-r--r--fs/9p/mux.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/fs/9p/mux.c b/fs/9p/mux.c
index 8ebc1af2c24..0854bef58c1 100644
--- a/fs/9p/mux.c
+++ b/fs/9p/mux.c
@@ -324,6 +324,26 @@ v9fs_mux_rpc(struct v9fs_session_info *v9ses, struct v9fs_fcall *tcall,
}
/**
+ * v9fs_mux_cancel_requests - cancels all pending requests
+ *
+ * @v9ses: session info structure
+ * @err: error code to return to the requests
+ */
+void v9fs_mux_cancel_requests(struct v9fs_session_info *v9ses, int err)
+{
+ struct v9fs_rpcreq *rptr;
+ struct v9fs_rpcreq *rreq;
+
+ dprintk(DEBUG_MUX, " %d\n", err);
+ spin_lock(&v9ses->muxlock);
+ list_for_each_entry_safe(rreq, rptr, &v9ses->mux_fcalls, next) {
+ rreq->err = err;
+ }
+ spin_unlock(&v9ses->muxlock);
+ wake_up_all(&v9ses->read_wait);
+}
+
+/**
* v9fs_recvproc - kproc to handle demultiplexing responses
* @data: session info structure
*