diff options
author | Simon Derr <simon.derr@bull.net> | 2012-09-17 15:16:29 +0200 |
---|---|---|
committer | Eric Van Hensbergen <ericvh@gmail.com> | 2012-09-17 21:54:11 +0200 |
commit | 1957b3a86f8eb5ceab32e3aae99e2822258aa530 (patch) | |
tree | 111a02cd46b43a94b46ef144cb74ef321658197f | |
parent | 9P: Fix race in p9_read_work() (diff) | |
download | linux-1957b3a86f8eb5ceab32e3aae99e2822258aa530.tar.xz linux-1957b3a86f8eb5ceab32e3aae99e2822258aa530.zip |
9P: fix test at the end of p9_write_work()
At the end of p9_write_work() we want to test if there is still data to send.
This means:
- either the current request still has data to send (wsize != 0)
- or there are requests in the unsent queue
Signed-off-by: Simon Derr <simon.derr@bull.net>
Signed-off-by: Eric Van Hensbergen <ericvh@gmail.com>
-rw-r--r-- | net/9p/trans_fd.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/net/9p/trans_fd.c b/net/9p/trans_fd.c index de1bbad0c7de..7088a94b2601 100644 --- a/net/9p/trans_fd.c +++ b/net/9p/trans_fd.c @@ -492,7 +492,7 @@ static void p9_write_work(struct work_struct *work) if (m->wpos == m->wsize) m->wpos = m->wsize = 0; - if (m->wsize == 0 && !list_empty(&m->unsent_req_list)) { + if (m->wsize || !list_empty(&m->unsent_req_list)) { if (test_and_clear_bit(Wpending, &m->wsched)) n = POLLOUT; else |