]> git.michaelhowe.org Git - packages/o/openafs.git/commitdiff
libafs: put connection always in getcapabilities helper
authorDerrick Brashear <shadow@dementix.org>
Tue, 19 Jun 2012 19:54:26 +0000 (15:54 -0400)
committerDerrick Brashear <shadow@dementix.org>
Fri, 6 Jul 2012 18:27:28 +0000 (11:27 -0700)
if we get a connection, we need to always put it back. here we exited
with error before doing so. 1.6 only fix

Change-Id: I67abec863c1d60d557277468a681847263d783a1
Reviewed-on: http://gerrit.openafs.org/7570
Reviewed-by: Jeffrey Altman <jaltman@your-file-system.com>
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Andrew Deason <adeason@sinenomine.net>
Reviewed-by: Derrick Brashear <shadow@dementix.org>
src/afs/afs_server.c

index 87172e4a6aff1866bfc0bc6553441095475671a2..0a7da20c7406185156d36764326ed4d084a903b2 100644 (file)
@@ -1806,11 +1806,10 @@ afs_GetCapabilities(struct server *ts)
     ObtainWriteLock(&afs_xserver, 723);
     /* we forced a conn above; important we mark it down if needed */
     if ((code < 0) && (code != RXGEN_OPCODE)) {
-       afs_PutConn(tc, rxconn, SHARED_LOCK);
        afs_ServerDown(tc->srvr);
        ForceNewConnections(tc->srvr); /* multi homed clients */
     }
-
+    afs_PutConn(tc, rxconn, SHARED_LOCK);
     if ( code && code != RXGEN_OPCODE ) {
        afs_warn("RXAFS_GetCapabilities failed with code %d\n", code);
        /* better not be anything to free. we failed! */