From: Derrick Brashear Date: Fri, 19 Oct 2001 19:52:28 +0000 (+0000) Subject: cache-server-inlinebulk-support-and-enable-inlinebulk-20011019 X-Git-Tag: openafs-devel-1_3_0~184 X-Git-Url: https://git.michaelhowe.org/gitweb/?a=commitdiff_plain;h=c3eee5410b6465c0e132364b9827934ea2b7b334;p=packages%2Fo%2Fopenafs.git cache-server-inlinebulk-support-and-enable-inlinebulk-20011019 expand struct server's "flags" to unsigned int from char assume inlinebulk and turn off on first failure ==================== This delta was composed from multiple commits as part of the CVS->Git migration. The checkin message with each commit was inconsistent. The following are the additional commit messages. ==================== fix precedence error --- diff --git a/src/afs/VNOPS/afs_vnop_lookup.c b/src/afs/VNOPS/afs_vnop_lookup.c index 88bd4c106..d2bd0900f 100644 --- a/src/afs/VNOPS/afs_vnop_lookup.c +++ b/src/afs/VNOPS/afs_vnop_lookup.c @@ -608,20 +608,22 @@ tagain: #ifdef RX_ENABLE_LOCKS AFS_GUNLOCK(); #endif /* RX_ENABLE_LOCKS */ -#ifdef notdef - code = RXAFS_InlineBulkStatus(tcp->id, &fidParm, &statParm, - &cbParm, &volSync); - if (code == RXGEN_OPCODE) { -#endif + + if (!(tcp->srvr->server->flags & SNO_INLINEBULK)) { + code = RXAFS_InlineBulkStatus(tcp->id, &fidParm, &statParm, + &cbParm, &volSync); + if (code == RXGEN_OPCODE) { + tcp->srvr->server->flags |= SNO_INLINEBULK; + inlinebulk = 0; + code = RXAFS_BulkStatus(tcp->id, &fidParm, &statParm, + &cbParm, &volSync); + } else + inlinebulk=1; + } else { + inlinebulk=0; code = RXAFS_BulkStatus(tcp->id, &fidParm, &statParm, &cbParm, &volSync); - inlinebulk=0; -#ifdef notdef - } else { - inlinebulk=1; } -#endif - #ifdef RX_ENABLE_LOCKS AFS_GLOCK(); #endif /* RX_ENABLE_LOCKS */ diff --git a/src/afs/afs.h b/src/afs/afs.h index d1918d536..2424c4038 100644 --- a/src/afs/afs.h +++ b/src/afs/afs.h @@ -329,6 +329,7 @@ struct srvAddr { #define SRVR_ISDOWN 0x20 #define SRVR_MULTIHOMED 0x40 #define SRVR_ISGONE 0x80 +#define SNO_INLINEBULK 0x100 struct server { union { @@ -356,7 +357,7 @@ struct server { afs_int32 numDowntimeIncidents; /* # (completed) downtime incidents */ afs_int32 sumOfDowntimes; /* Total downtime experienced, in seconds */ struct srvAddr *addr; - char flags; /* Misc flags*/ + afs_uint32 flags; /* Misc flags*/ }; #define afs_PutServer(servp, locktype)