struct afs_q *cq, *tq;
loff_t n = 0;
+ AFS_GLOCK();
ObtainReadLock(&afs_xcell);
for (cq = CellLRU.next; cq != &CellLRU; cq = tq) {
tq = QNext(cq);
break;
}
if (cq == &CellLRU)
- return NULL;
+ cq = NULL;
+ AFS_GUNLOCK();
return cq;
}
{
struct afs_q *cq = p, *tq;
+ AFS_GLOCK();
(*pos)++;
tq = QNext(cq);
if (tq == &CellLRU)
return NULL;
+ AFS_GUNLOCK();
return tq;
}
static void c_stop(struct seq_file *m, void *p)
{
+ AFS_GLOCK();
ReleaseReadLock(&afs_xcell);
+ AFS_GUNLOCK();
}
static int c_show(struct seq_file *m, void *p)