Windows: avoid duplicate work cm_Analyze
authorJeffrey Altman <jaltman@your-file-system.com>
Wed, 16 May 2012 03:27:36 +0000 (23:27 -0400)
committerJeffrey Altman <jaltman@secure-endpoints.com>
Wed, 16 May 2012 13:03:30 +0000 (06:03 -0700)
During VNOVOL processing, if the volume is replicated and the
server reference status is "not busy", set the status to busy
and avoid calling cm_SetServerBusyStatus() because that function
mirrors the loop that is already being processed.

Change-Id: I1c92fd02fecc92c3dcd94a33eb87fe5c2fa254ae
Reviewed-on: http://gerrit.openafs.org/7411
Tested-by: BuildBot <buildbot@rampaginggeek.com>
Reviewed-by: Jeffrey Altman <jaltman@secure-endpoints.com>
Tested-by: Jeffrey Altman <jaltman@secure-endpoints.com>

src/WINNT/afsd/cm_conn.c

index 881a75a..8f865e0 100644 (file)
@@ -726,7 +726,8 @@ cm_Analyze(cm_conn_t *connp,
                         osi_Log2(afsd_logp, "VNOVOL received for volume %u from server %s",
                                  fidp->volume, osi_LogSaveString(afsd_logp,addr));
                         if (replicated) {
-                            cm_SetServerBusyStatus(serversp, serverp);
+                            if (tsrp->status == srv_not_busy)
+                                tsrp->status = srv_busy;
                         } else {
                             Sleep(2000);
                         }