• Jeff Layton's avatar
    knfsd: allocate readahead cache in individual chunks · 54a66e54
    Jeff Layton authored
    I had a report from someone building a large NFS server that they were
    unable to start more than 585 nfsd threads. It was reported against an
    older kernel using the slab allocator, and I tracked it down to the
    large allocation in nfsd_racache_init failing.
    
    It appears that the slub allocator handles large allocations better,
    but large contiguous allocations can often be problematic. There
    doesn't seem to be any reason that the racache has to be allocated as a
    single large chunk. This patch breaks this up so that the racache is
    built up from separate allocations.
    
    (Thanks also to Takashi Iwai for a bugfix.)
    Signed-off-by: default avatarJeff Layton <jlayton@redhat.com>
    Signed-off-by: default avatarJ. Bruce Fields <bfields@citi.umich.edu>
    Cc: Takashi Iwai <tiwai@suse.de>
    54a66e54
vfs.c 49.7 KB