Show all of a server's addresses in /proc/fs/afs/servers, placing the second plus addresses on padded lines of their own. The current address is marked with a star.
Unified · Split
| @@ -326,6 +326,7 @@ static int afs_proc_servers_show(struct seq_file *m, void *v) · 325 unmodified lines | ||
| 326 | 326 | { |
| 327 | 327 | struct afs_server *server; |
| 328 | 328 | struct afs_addr_list *alist; |
| 329 | + int i; | |
| 329 | 330 | |
| 330 | 331 | if (v == SEQ_START_TOKEN) { |
| 331 | 332 | seq_puts(m, "UUID USE ADDR\n"); |
| @@ -334,10 +335,15 @@ static int afs_proc_servers_show(struct seq_file *m, void *v) · 2 unmodified lines | ||
| 334 | 335 | |
| 335 | 336 | server = list_entry(v, struct afs_server, proc_link); |
| 336 | 337 | alist = rcu_dereference(server->addresses); |
| 337 | − seq_printf(m, "%pU %3d %pISp\n", | |
| 338 | + seq_printf(m, "%pU %3d %pISpc%s\n", | |
| 338 | 339 | &server->uuid, |
| 339 | 340 | atomic_read(&server->usage), |
| 340 | − &alist->addrs[alist->index].transport); | |
| 341 | + &alist->addrs[0].transport, | |
| 342 | + alist->index == 0 ? "*" : ""); | |
| 343 | + for (i = 1; i < alist->nr_addrs; i++) | |
| 344 | + seq_printf(m, " %pISpc%s\n", | |
| 345 | + &alist->addrs[i].transport, | |
| 346 | + alist->index == i ? "*" : ""); | |
| 341 | 347 | return 0; |
| 342 | 348 | } |
| 343 | 349 | |