Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

afs: Fix cell specification to permit an empty address list

Fix the cell specification mechanism to allow cells to be pre-created
without having to specify at least one address (the addresses will be
upcalled for).

This allows the cell information preload service to avoid the need to issue
loads of DNS lookups during boot to get the addresses for each cell (500+
lookups for the 'standard' cell list[*]). The lookups can be done later as
each cell is accessed through the filesystem.

Also remove the print statement that prints a line every time a new cell is
added.

[*] There are 144 cells in the list. Each cell is first looked up for an
SRV record, and if that fails, for an AFSDB record. These get a list
of server names, each of which then has to be looked up to get the
addresses for that server. E.g.:

dig srv _afs3-vlserver._udp.grand.central.org

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

authored by

David Howells and committed by
Linus Torvalds
ecfe951f 3d0e7a9e

+7 -8
+7 -8
fs/afs/proc.c
··· 98 98 goto inval; 99 99 100 100 args = strchr(name, ' '); 101 - if (!args) 102 - goto inval; 103 - do { 104 - *args++ = 0; 105 - } while(*args == ' '); 106 - if (!*args) 107 - goto inval; 101 + if (args) { 102 + do { 103 + *args++ = 0; 104 + } while(*args == ' '); 105 + if (!*args) 106 + goto inval; 107 + } 108 108 109 109 /* determine command to perform */ 110 110 _debug("cmd=%s name=%s args=%s", buf, name, args); ··· 120 120 121 121 if (test_and_set_bit(AFS_CELL_FL_NO_GC, &cell->flags)) 122 122 afs_put_cell(net, cell); 123 - printk("kAFS: Added new cell '%s'\n", name); 124 123 } else { 125 124 goto inval; 126 125 }