afs: Probe multiple fileservers simultaneously
Send probes to all the unprobed fileservers in a fileserver list on all addresses simultaneously in an attempt to find out the fastest route whilst not getting stuck for 20s on any server or address that we don't get a reply from. This alleviates the problem whereby attempting to access a new server can take a long time because the rotation algorithm ends up rotating through all servers and addresses until it finds one that responds. Signed-off-by: David Howells <dhowells@redhat.com>
This commit is contained in:
@@ -118,11 +118,11 @@ bool afs_annotate_server_list(struct afs_server_list *new,
|
||||
return false;
|
||||
|
||||
changed:
|
||||
/* Maintain the same current server as before if possible. */
|
||||
cur = old->servers[old->index].server;
|
||||
/* Maintain the same preferred server as before if possible. */
|
||||
cur = old->servers[old->preferred].server;
|
||||
for (j = 0; j < new->nr_servers; j++) {
|
||||
if (new->servers[j].server == cur) {
|
||||
new->index = j;
|
||||
new->preferred = j;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
Reference in New Issue
Block a user