vllist 69 fs/afs/addr_list.c struct afs_vlserver_list *vllist; vllist 120 fs/afs/addr_list.c vllist = afs_alloc_vlserver_list(1); vllist 121 fs/afs/addr_list.c if (!vllist) vllist 124 fs/afs/addr_list.c vllist->nr_servers = 1; vllist 125 fs/afs/addr_list.c vllist->servers[0].server = afs_alloc_vlserver("<dummy>", 7, AFS_VL_PORT); vllist 126 fs/afs/addr_list.c if (!vllist->servers[0].server) vllist 206 fs/afs/addr_list.c rcu_assign_pointer(vllist->servers[0].server->addresses, alist); vllist 208 fs/afs/addr_list.c return vllist; vllist 221 fs/afs/addr_list.c afs_put_vlserverlist(net, vllist); vllist 243 fs/afs/addr_list.c struct afs_vlserver_list *vllist; vllist 260 fs/afs/addr_list.c vllist = afs_extract_vlserver_list(cell, result, ret); vllist 262 fs/afs/addr_list.c vllist = afs_parse_text_addrs(cell->net, result, ret, ',', vllist 265 fs/afs/addr_list.c if (IS_ERR(vllist) && vllist != ERR_PTR(-ENOMEM)) vllist 266 fs/afs/addr_list.c pr_err("Failed to parse DNS data %ld\n", PTR_ERR(vllist)); vllist 268 fs/afs/addr_list.c return vllist; vllist 126 fs/afs/cell.c struct afs_vlserver_list *vllist; vllist 172 fs/afs/cell.c vllist = afs_parse_text_addrs(net, vllist 175 fs/afs/cell.c if (IS_ERR(vllist)) { vllist 176 fs/afs/cell.c ret = PTR_ERR(vllist); vllist 180 fs/afs/cell.c vllist->source = DNS_RECORD_FROM_CONFIG; vllist 181 fs/afs/cell.c vllist->status = DNS_LOOKUP_NOT_DONE; vllist 185 fs/afs/cell.c vllist = afs_alloc_vlserver_list(0); vllist 186 fs/afs/cell.c if (!vllist) vllist 188 fs/afs/cell.c vllist->source = DNS_RECORD_UNAVAILABLE; vllist 189 fs/afs/cell.c vllist->status = DNS_LOOKUP_NOT_DONE; vllist 193 fs/afs/cell.c rcu_assign_pointer(cell->vl_servers, vllist); vllist 195 fs/afs/cell.c cell->dns_source = vllist->source; vllist 196 fs/afs/cell.c cell->dns_status = vllist->status; vllist 226 fs/afs/cell.c const char *vllist, bool excl) vllist 233 fs/afs/cell.c _enter("%s,%s", name, vllist); vllist 250 fs/afs/cell.c candidate = afs_alloc_cell(net, name, namesz, vllist); vllist 334 fs/afs/cell.c const char *cp, *vllist; vllist 350 fs/afs/cell.c vllist = NULL; vllist 353 fs/afs/cell.c vllist = cp + 1; vllist 358 fs/afs/cell.c new_root = afs_lookup_cell(net, rootcell, len, vllist, false); vllist 383 fs/afs/cell.c struct afs_vlserver_list *vllist, *old = NULL, *p; vllist 391 fs/afs/cell.c vllist = afs_dns_query(cell, &expiry); vllist 392 fs/afs/cell.c if (IS_ERR(vllist)) { vllist 393 fs/afs/cell.c ret = PTR_ERR(vllist); vllist 400 fs/afs/cell.c vllist = afs_alloc_vlserver_list(0); vllist 401 fs/afs/cell.c if (!vllist) vllist 407 fs/afs/cell.c vllist->status = DNS_LOOKUP_GOT_NOT_FOUND; vllist 411 fs/afs/cell.c vllist->status = DNS_LOOKUP_GOT_TEMP_FAILURE; vllist 414 fs/afs/cell.c vllist->status = DNS_LOOKUP_GOT_LOCAL_FAILURE; vllist 419 fs/afs/cell.c _debug("%s: got list %d %d", cell->name, vllist->source, vllist->status); vllist 420 fs/afs/cell.c cell->dns_status = vllist->status; vllist 430 fs/afs/cell.c _debug("%s: status %d", cell->name, vllist->status); vllist 431 fs/afs/cell.c if (vllist->source == DNS_RECORD_UNAVAILABLE) { vllist 432 fs/afs/cell.c switch (vllist->status) { vllist 457 fs/afs/cell.c if (vllist->nr_servers > 0 || p->nr_servers == 0) { vllist 458 fs/afs/cell.c rcu_assign_pointer(cell->vl_servers, vllist); vllist 459 fs/afs/cell.c cell->dns_source = vllist->source; vllist 787 fs/afs/cell.c struct afs_vlserver_list *vllist; vllist 791 fs/afs/cell.c vllist = rcu_dereference_protected( vllist 794 fs/afs/cell.c if (vllist->nr_servers > 0) vllist 1304 fs/afs/internal.h static inline struct afs_vlserver_list *afs_get_vlserverlist(struct afs_vlserver_list *vllist) vllist 1306 fs/afs/internal.h if (vllist) vllist 1307 fs/afs/internal.h atomic_inc(&vllist->usage); vllist 1308 fs/afs/internal.h return vllist; vllist 18 fs/afs/proc.c struct afs_vlserver_list *vllist; vllist 36 fs/afs/proc.c struct afs_vlserver_list *vllist; vllist 46 fs/afs/proc.c vllist = rcu_dereference(cell->vl_servers); vllist 52 fs/afs/proc.c vllist->nr_servers, vllist 287 fs/afs/proc.c const struct afs_vlserver_list *vllist = priv->vllist; vllist 295 fs/afs/proc.c dns_record_sources[vllist ? vllist->source : 0], vllist 296 fs/afs/proc.c dns_lookup_statuses[vllist ? vllist->status : 0]); vllist 321 fs/afs/proc.c struct afs_vlserver_list *vllist; vllist 327 fs/afs/proc.c vllist = rcu_dereference(cell->vl_servers); vllist 328 fs/afs/proc.c priv->vllist = vllist; vllist 335 fs/afs/proc.c if (pos - 1 >= vllist->nr_servers) vllist 338 fs/afs/proc.c return &vllist->servers[pos - 1]; vllist 345 fs/afs/proc.c struct afs_vlserver_list *vllist = priv->vllist; vllist 351 fs/afs/proc.c if (!vllist || pos - 1 >= vllist->nr_servers) vllist 354 fs/afs/proc.c return &vllist->servers[pos - 1]; vllist 52 fs/afs/vl_list.c struct afs_vlserver_list *vllist; vllist 54 fs/afs/vl_list.c vllist = kzalloc(struct_size(vllist, servers, nr_servers), GFP_KERNEL); vllist 55 fs/afs/vl_list.c if (vllist) { vllist 56 fs/afs/vl_list.c atomic_set(&vllist->usage, 1); vllist 57 fs/afs/vl_list.c rwlock_init(&vllist->lock); vllist 60 fs/afs/vl_list.c return vllist; vllist 63 fs/afs/vl_list.c void afs_put_vlserverlist(struct afs_net *net, struct afs_vlserver_list *vllist) vllist 65 fs/afs/vl_list.c if (vllist) { vllist 66 fs/afs/vl_list.c unsigned int u = atomic_dec_return(&vllist->usage); vllist 72 fs/afs/vl_list.c for (i = 0; i < vllist->nr_servers; i++) { vllist 73 fs/afs/vl_list.c afs_put_vlserver(net, vllist->servers[i].server); vllist 75 fs/afs/vl_list.c kfree_rcu(vllist, rcu); vllist 162 fs/afs/vl_list.c struct afs_vlserver_list *vllist, *previous; vllist 182 fs/afs/vl_list.c vllist = afs_alloc_vlserver_list(nr_servers); vllist 183 fs/afs/vl_list.c if (!vllist) vllist 186 fs/afs/vl_list.c vllist->source = (hdr->source < NR__dns_record_source) ? vllist 188 fs/afs/vl_list.c vllist->status = (hdr->status < NR__dns_lookup_status) ? vllist 262 fs/afs/vl_list.c if (vllist->nr_servers >= nr_servers) { vllist 263 fs/afs/vl_list.c _debug("skip %u >= %u", vllist->nr_servers, nr_servers); vllist 292 fs/afs/vl_list.c for (j = 0; j < vllist->nr_servers; j++) { vllist 293 fs/afs/vl_list.c if (bs.priority < vllist->servers[j].priority) vllist 295 fs/afs/vl_list.c if (bs.priority == vllist->servers[j].priority && vllist 296 fs/afs/vl_list.c bs.weight > vllist->servers[j].weight) vllist 300 fs/afs/vl_list.c if (j < vllist->nr_servers) { vllist 301 fs/afs/vl_list.c memmove(vllist->servers + j + 1, vllist 302 fs/afs/vl_list.c vllist->servers + j, vllist 303 fs/afs/vl_list.c (vllist->nr_servers - j) * sizeof(struct afs_vlserver_entry)); vllist 308 fs/afs/vl_list.c vllist->servers[j].priority = bs.priority; vllist 309 fs/afs/vl_list.c vllist->servers[j].weight = bs.weight; vllist 310 fs/afs/vl_list.c vllist->servers[j].server = server; vllist 311 fs/afs/vl_list.c vllist->nr_servers++; vllist 320 fs/afs/vl_list.c _leave(" = ok [%u]", vllist->nr_servers); vllist 321 fs/afs/vl_list.c return vllist; vllist 326 fs/afs/vl_list.c afs_put_vlserverlist(cell->net, vllist); vllist 166 fs/afs/vl_probe.c struct afs_vlserver_list *vllist) vllist 175 fs/afs/vl_probe.c for (i = 0; i < vllist->nr_servers; i++) { vllist 176 fs/afs/vl_probe.c server = vllist->servers[i].server; vllist 191 fs/afs/vl_probe.c int afs_wait_for_vl_probes(struct afs_vlserver_list *vllist, vllist 200 fs/afs/vl_probe.c _enter("%u,%lx", vllist->nr_servers, untried); vllist 203 fs/afs/vl_probe.c for (i = 0; i < vllist->nr_servers; i++) { vllist 205 fs/afs/vl_probe.c server = vllist->servers[i].server; vllist 215 fs/afs/vl_probe.c waits = kmalloc(array_size(vllist->nr_servers, sizeof(*waits)), GFP_KERNEL); vllist 219 fs/afs/vl_probe.c for (i = 0; i < vllist->nr_servers; i++) { vllist 221 fs/afs/vl_probe.c server = vllist->servers[i].server; vllist 231 fs/afs/vl_probe.c for (i = 0; i < vllist->nr_servers; i++) { vllist 233 fs/afs/vl_probe.c server = vllist->servers[i].server; vllist 249 fs/afs/vl_probe.c for (i = 0; i < vllist->nr_servers; i++) { vllist 251 fs/afs/vl_probe.c server = vllist->servers[i].server; vllist 268 fs/afs/vl_probe.c vllist->preferred = pref;