OpenAFS CVS Commit: openafs/src/WINNT/afsd by jaltman

Thu, 12 Feb 2009 16:30:03 EST

Update of /cvs/openafs/src/WINNT/afsd
In directory GRAND.CENTRAL.ORG:/home/jaltman/openafs/cvs-head/src/WINNT/afsd

Modified Files:
	cm_conn.c cm_conn.h cm_volume.c 
Log Message:
DELTA windows-vmoved-vnovol-failover-20090212
FIXES 124276

A readonly volume with multiple instances was being marked alldown 
when one of the instances resulted in VNOVOL because the vldb and
the indicated file server were out of sync.  The cache manager would
then attempt to re-obtain the volume location info from the vldb 
for the entire timeout period.

This patch:

adds trace logging to cm_Analyze indicating which server references
are being deleted and which remain in response to a VNOVOL/VMOVED error.

adds trace logging to cm_UpdateVolumeStatusInt showing how the 
new volume status value is determined.

corrects cm_Analyze() so that it doesn't corrupt the server reference
list during cm_FreeServerList() calls; doesn't orphan the server reference
list by setting *serverpp to NULL; and only re-obtains the volume info
list once per request.

--- DELTA config follows ---
windows-vmoved-vnovol-failover-20090212 openafs/src/WINNT/afsd/cm_conn.c 1.105 1.106
windows-vmoved-vnovol-failover-20090212 openafs/src/WINNT/afsd/cm_conn.h 1.28 1.29
windows-vmoved-vnovol-failover-20090212 openafs/src/WINNT/afsd/cm_volume.c 1.71 1.72