Problems with nfs rpc.statd and PAE

João Carlos Mendes Luís jonny at
Sun Jul 29 00:14:54 UTC 2007


    I've just configured my first server with 4G RAM.  To use it, I had 
to select PAE in kernel config.  I was a little bit troubled by it's 
advice not to use modules (is it that critical?), but got it running.

    But when it is running on PAE, NFS statd refuses to run:

# /etc/rc.d/nfslocking start
Starting statd.
rpc.statd: unable to mmap() status file: Cannot allocate memory
Segmentation fault

    Using strace I found it was trying to mmap the status file, at 

open("/var/db/statd.status", O_RDWR)    = 10
mmap(0, 268435456, PROT_READ|PROT_WRITE, MAP_SHARED, 10, 0) = -1 ENOMEM 
(Cannot allocate memory)

    It's really strange to have mmap len = 256M, specially because the 
file is always small.  But it works without PAE, and do not work with 
PAE.  And it is described in the handbook:

    Also, I tought PAE was only needed when we had MORE than 4G.  But 
without PAE the system shows only 3.5G:

- Without PAE:

Jul 25 16:34:41 zeus kernel: real memory  = 3757965312 (3583 MB)
Jul 25 16:34:41 zeus kernel: avail memory = 3678429184 (3508 MB)

- With PAE:

Jul 25 17:09:01 zeus kernel: real memory  = 4831838208 (4608 MB)
Jul 25 17:09:01 zeus kernel: avail memory = 4193112064 (3998 MB)

    If I could use the whole 4G, or at least lose less than 512M, I'd 
prefer to stay off PAE.

    Any help you could give me?



João Carlos Mendes Luís - Networking Engineer - jonny at

More information about the freebsd-questions mailing list