p9_client_write(): avoid double p9_free_req()
authorAl Viro <viro@zeniv.linux.org.uk>
Sat, 4 Jul 2015 20:11:05 +0000 (16:11 -0400)
committerAl Viro <viro@zeniv.linux.org.uk>
Sat, 4 Jul 2015 20:11:05 +0000 (16:11 -0400)
Braino in "9p: switch p9_client_write() to passing it struct iov_iter *";
if response is impossible to parse and we discard the request, get the
out of the loop right there.

Cc: stable@vger.kernel.org
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
net/9p/client.c

index 28f36e4556f96e86764a15198430d1d3e9bdcb09..81925b9233185380482ecf59cb669383b0244615 100644 (file)
@@ -1648,6 +1648,7 @@ p9_client_write(struct p9_fid *fid, u64 offset, struct iov_iter *from, int *err)
                if (*err) {
                        trace_9p_protocol_dump(clnt, req->rc);
                        p9_free_req(clnt, req);
+                       break;
                }
 
                p9_debug(P9_DEBUG_9P, "<<< RWRITE count %d\n", count);