rx: conn_call_lock leak
authorJeffrey Altman <jaltman@your-file-system.com>
Sun, 15 Apr 2012 21:40:03 +0000 (17:40 -0400)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Mon, 16 Apr 2012 13:52:53 +0000 (06:52 -0700)
In rxi_ReceivePacket, if the packet is for a client connection
and there is no call allocated, the conn->conn_call_lock was
leaked.  Introduced by 95c38dff3740d7e24971ceb5875c06e7abfce102.

Change-Id: Icfc10849c1da08d7c96d139b0a10d9ffe7ee57df
Reviewed-on: http://gerrit.openafs.org/7218
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>

src/rx/rx.c

index 79ee76a..77de74d 100644 (file)
@@ -3334,6 +3334,7 @@ rxi_ReceivePacket(struct rx_packet *np, osi_socket socket,
          * then, since this is a client connection we're getting data for
          * it must be for the previous call.
          */
+        MUTEX_EXIT(&conn->conn_call_lock);
         if (rx_stats_active)
             rx_atomic_inc(&rx_stats.spuriousPacketsRead);
        putConnection(conn);