OSDN Git Service

nfsd: fix default iosize calculation on 32bit
authorJ. Bruce Fields <bfields@redhat.com>
Mon, 30 Jan 2012 21:21:11 +0000 (16:21 -0500)
committerJ. Bruce Fields <bfields@redhat.com>
Fri, 3 Feb 2012 20:33:17 +0000 (15:33 -0500)
The rpc buffers will be allocated out of low memory, so we should really
only be taking that into account.

Signed-off-by: J. Bruce Fields <bfields@redhat.com>
fs/nfsd/nfssvc.c

index e9eb408..aacf1f4 100644 (file)
@@ -314,7 +314,7 @@ static int nfsd_get_default_max_blksize(void)
        unsigned long ret;
 
        si_meminfo(&i);
-       target = i.totalram << PAGE_SHIFT;
+       target = (i.totalram - i.totalhigh) << PAGE_SHIFT;
        /*
         * Aim for 1/4096 of memory per thread This gives 1MB on 4Gig
         * machines, but only uses 32K on 128M machines.  Bottom out at