From ca0e79a46097d54e4af46c67c852479d97af35bb Mon Sep 17 00:00:00 2001 From: David Howells Date: Thu, 2 Nov 2023 16:08:43 +0000 Subject: afs: Make it possible to find the volumes that are using a server Make it possible to find the afs_volume structs that are using an afs_server struct to aid in breaking volume callbacks. The way this is done is that each afs_volume already has an array of afs_server_entry records that point to the servers where that volume might be found. An afs_volume backpointer and a list node is added to each entry and each entry is then added to an RCU-traversable list on the afs_server to which it points. Signed-off-by: David Howells cc: Marc Dionne cc: linux-afs@lists.infradead.org --- fs/afs/vl_alias.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'fs/afs/vl_alias.c') diff --git a/fs/afs/vl_alias.c b/fs/afs/vl_alias.c index 43788d0c18e8..63e7ed324af9 100644 --- a/fs/afs/vl_alias.c +++ b/fs/afs/vl_alias.c @@ -77,7 +77,7 @@ static int afs_compare_volume_slists(const struct afs_volume *vol_a, lb = rcu_dereference(vol_b->servers); for (i = 0; i < AFS_MAXTYPES; i++) - if (la->vids[i] != lb->vids[i]) + if (vol_a->vids[i] != vol_b->vids[i]) return 0; while (a < la->nr_servers && b < lb->nr_servers) { -- cgit v1.2.3