X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=fs%2Fafs%2Fcell.c;h=bfc1fd22d5b10578088aaf12e527e87c7bf163ee;hb=refs%2Fheads%2Fvserver;hp=e7fd3cce44ee67d3fa0d0e123119251c120b92b8;hpb=5273a3df6485dc2ad6aa7ddd441b9a21970f003b;p=linux-2.6.git diff --git a/fs/afs/cell.c b/fs/afs/cell.c index e7fd3cce4..bfc1fd22d 100644 --- a/fs/afs/cell.c +++ b/fs/afs/cell.c @@ -27,7 +27,7 @@ DECLARE_RWSEM(afs_proc_cells_sem); LIST_HEAD(afs_proc_cells); static struct list_head afs_cells = LIST_HEAD_INIT(afs_cells); -static rwlock_t afs_cells_lock = RW_LOCK_UNLOCKED; +static DEFINE_RWLOCK(afs_cells_lock); static DECLARE_RWSEM(afs_cells_sem); /* add/remove serialisation */ static struct afs_cell *afs_cell_root; @@ -413,8 +413,7 @@ int afs_server_find_by_peer(const struct rxrpc_peer *peer, /* we found it in the graveyard - resurrect it */ found_dead_server: - list_del(&server->link); - list_add_tail(&server->link, &cell->sv_list); + list_move_tail(&server->link, &cell->sv_list); afs_get_server(server); afs_kafstimod_del_timer(&server->timeout); spin_unlock(&cell->sv_gylock);