From: Andrew Deason Date: Wed, 14 Nov 2012 00:27:11 +0000 (-0600) Subject: afs: Handle VNOSERVICE as a timeout X-Git-Tag: openafs-stable-1_8_0pre1~1777 X-Git-Url: https://git.openafs.org/?p=openafs.git;a=commitdiff_plain;h=22da9ec896f651f066317a85268620a7d3ac46fa afs: Handle VNOSERVICE as a timeout For whatever reason, the fileserver uses VNOSERVICE to indicate that an Rx call was killed due to an idledead timeout. It is not used for any volume errors, so treat it like the idle dead error codes. Change-Id: I432cbb8ae011d5269ac8df31261d11204687fcf6 Reviewed-on: http://gerrit.openafs.org/8462 Tested-by: BuildBot Reviewed-by: Derrick Brashear --- diff --git a/src/afs/afs_analyze.c b/src/afs/afs_analyze.c index 34db88f..0e77b53 100644 --- a/src/afs/afs_analyze.c +++ b/src/afs/afs_analyze.c @@ -621,7 +621,7 @@ afs_Analyze(struct afs_conn *aconn, struct rx_connection *rxconn, shouldRetry = 1; goto out; } - if (acode == RX_CALL_TIMEOUT || acode == RX_CALL_IDLE) { + if (acode == RX_CALL_TIMEOUT || acode == RX_CALL_IDLE || acode == VNOSERVICE) { serversleft = afs_BlackListOnce(areq, afid, tsp); if (afid) tvp = afs_FindVolume(afid, READ_LOCK); @@ -778,7 +778,7 @@ afs_Analyze(struct afs_conn *aconn, struct rx_connection *rxconn, } /* Check for bad volume data base / missing volume. */ else if (acode == VSALVAGE || acode == VOFFLINE || acode == VNOVOL - || acode == VNOSERVICE || acode == VMOVED) { + || acode == VMOVED) { struct cell *tcell; int same;