CIFS: Fix missing a decrement of inFlight value
authorPavel Shilovsky <piastryyy@gmail.com>
Wed, 3 Aug 2011 19:12:18 +0000 (23:12 +0400)
committerGreg Kroah-Hartman <gregkh@suse.de>
Tue, 16 Aug 2011 01:31:36 +0000 (18:31 -0700)
commit 0193e072268fe62c4b19ad4b05cd0d4b23c43bb9 upstream.

if we failed on getting mid entry in cifs_call_async.

Signed-off-by: Pavel Shilovsky <piastryyy@gmail.com>
Signed-off-by: Steve French <sfrench@us.ibm.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
fs/cifs/transport.c

index 147aa22c3c3a4b0f2b647b6978ec31340ff1a5da..c1b9c4b107398bd31504f594f294c5bb6dc7ef60 100644 (file)
@@ -362,6 +362,8 @@ cifs_call_async(struct TCP_Server_Info *server, struct kvec *iov,
        mid = AllocMidQEntry(hdr, server);
        if (mid == NULL) {
                mutex_unlock(&server->srv_mutex);
+               atomic_dec(&server->inFlight);
+               wake_up(&server->request_q);
                return -ENOMEM;
        }