return NULL;
}
memset(tv, 0, sizeof(struct volume));
- tv->cell = tcell->cellNum;
- AFS_RWLOCK_INIT(&tv->lock, "volume lock");
- tv->next = afs_volumes[i]; /* thread into list */
- afs_volumes[i] = tv;
- tv->volume = volid;
- for (j = fvTable[FVHash(tv->cell, volid)]; j != 0; j = tf->next) {
+
+ for (j = fvTable[FVHash(tcell->cellNum, volid)]; j != 0; j = tf->next) {
if (afs_FVIndex != j) {
struct osi_file *tfile;
tfile = osi_UFSOpen(&volumeInode);
afs_FVIndex = j;
}
tf = &staticFVolume;
- if (tf->cell == tv->cell && tf->volume == volid)
+ if (tf->cell == tcell->cellNum && tf->volume == volid)
break;
}
+
+ tv->cell = tcell->cellNum;
+ AFS_RWLOCK_INIT(&tv->lock, "volume lock");
+ tv->next = afs_volumes[i]; /* thread into list */
+ afs_volumes[i] = tv;
+ tv->volume = volid;
+
if (tf && (j != 0)) {
tv->vtix = afs_FVIndex;
tv->mtpoint = tf->mtpoint;