mirror of
https://git.openafs.org/openafs.git
synced 2025-01-31 13:38:01 +00:00
DEVEL153X-volser-reclone-bring-online-before-giveback-20080716
LICENSE IPL10 FIXES 107258 when giving back a volume after reclone, make it inService to avoid a race between callers and the SetFlags RPC (cherry picked from commit b4ce530d365e97342a92f4a8d59de12b0570c699)
This commit is contained in:
parent
f162e9d259
commit
1b1f903b58
@ -843,6 +843,11 @@ VolReClone(struct rx_call *acid, afs_int32 atrans, afs_int32 cloneId)
|
|||||||
LogError(error);
|
LogError(error);
|
||||||
goto fail;
|
goto fail;
|
||||||
}
|
}
|
||||||
|
/* VUpdateVolume succeeded. Mark it in service so there's no window
|
||||||
|
* between FSYNC_VOL_ON and VolSetFlags where it's offline with no
|
||||||
|
* specialStatus; this is a reclone and this volume started online
|
||||||
|
*/
|
||||||
|
V_inService(clonevp) = 1;
|
||||||
VDetachVolume(&error, clonevp); /* allow file server to get it's hands on it */
|
VDetachVolume(&error, clonevp); /* allow file server to get it's hands on it */
|
||||||
clonevp = NULL;
|
clonevp = NULL;
|
||||||
VUpdateVolume(&error, originalvp);
|
VUpdateVolume(&error, originalvp);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user