viced-allow-hinting-of-all-new-clients-for-vbusy-vrestarting-handling-20030215

For sites with only new (>3.4) clients (or who decide to not care
about older clients) and want to force VRESTARTING instead of VBUSY.
This commit is contained in:
Derrick Brashear 2003-02-15 14:17:15 +00:00
parent 825e7d57e7
commit 214c2e7b19
3 changed files with 10 additions and 3 deletions

View File

@ -462,13 +462,13 @@ CheckVnode(AFSFid *fid, Volume **volptr, Vnode **vptr, int lock)
/* I'm not really worried about when we restarted, I'm */
/* just worried about when the first VBUSY was returned. */
TM_GetTimeOfDay(&restartedat, 0);
return(VBUSY);
return(busyonrst?VBUSY:VRESTARTING);
}
else {
struct timeval now;
TM_GetTimeOfDay(&now, 0);
if ((now.tv_sec - restartedat.tv_sec) < (11*60)) {
return(VBUSY);
return(busyonrst?VBUSY:VRESTARTING);
}
else {
return (VRESTARTING);

View File

@ -147,6 +147,7 @@ struct afs_PerfStats afs_perfstats;
extern int LogLevel;
extern int Statistics;
int busyonrst = 1;
int timeout = 30;
int SawSpare;
int SawPctSpare;
@ -646,6 +647,7 @@ static void FlagMsg()
strcat(buffer, "[-readonly (read-only file server)] ");
strcat(buffer, "[-hr <number of hours between refreshing the host cps>] ");
strcat(buffer, "[-busyat <redirect clients when queue > n>] ");
strcat(buffer, "[-nobusy <no VBUSY before a volume is attached>] ");
strcat(buffer, "[-rxpck <number of rx extra packets>] ");
strcat(buffer, "[-rxdbg (enable rx debugging)] ");
strcat(buffer, "[-rxdbge (enable rxevent debugging)] ");
@ -875,7 +877,10 @@ static int ParseArgs(int argc, char *argv[])
busy_threshold);
Sawbusy = 0;
}
}
}
else
if (!strcmp(argv[i], "-nobusy"))
busyonrst=0;
#ifdef AFS_AIX32_ENV
else
if (!strcmp(argv[i], "-m")) {

View File

@ -189,6 +189,8 @@ struct AFSStatistics
struct AFSDisk Disks[AFS_MSTATDISKS];
};
extern int busyonrst;
#define RESTART_ORDINARY 1
#define RESTART_FAST 2
#define RESTART_SAFE 3