no pv entries: increase vm.pmap.shpgperproc

Bill Moran wmoran at
Fri Jan 19 14:13:41 UTC 2007

In response to "peter" <peter at>:
> Hi,
> My freebsd box runs the apache httpd2.0 server, postgresql8.1server,
> Recently, I got the below info in /var/crash.
> “Dump header from device /dev/da0s1b
>   Architecture: i386
>   Architecture Version: 2
>   Dump Length: 1073127424B (1023 MB)
>   Blocksize: 512
>   Dumptime: Wed Jan 17 16:39:08 2007
>   Hostname:
>   Magic: FreeBSD Kernel Dump
>   Version String: FreeBSD 6.0-RELEASE #0: Tue Apr 25 15:07:33 CST 2006
>     peter at
>   Panic String: no pv entries: increase vm.pmap.shpgperproc
>   Dump Parity: 2383301964
>   Bounds: 49
>   Dump Status: good”
> I had searched in google, but I didn’t know how to do.

You _should_ be able to raise the vm.pmap.shpgperproc sysctl to prevent
the problem -- but there doesn't seem to be any such sysctl.  I'm not sure
what's going on here, but it seems to me that a PR is in order.

Failing that, you could set the following in your kernel config:
and rebuild/reinstall your kernel.  If you're not familiar with kernel
building, the docs are here:

The default value is 200, so I expect 250 will be enough of a bump to
fix the problem.  If it's not, raise it a little higher and try again.
I don't know of any way to tell exactly what this value should be other
than trial and error.  I've seen warnings that raising this value too
high can result in an unbootable kernel, so take care to understand how
to recover from the installation of an unbootable kernel.

The research I've done seems to indicate that pv exhaustion is very rare,
which is why you're having trouble finding reference to it in Google
searches.  That's the first reference I've seen to a sysctl --
usually the recommendation is to rebuild the kernel.  Google for
PMAP_SHPGPERPROC and you'll find some other (albeit few) discussions.

Bill Moran
Collaborative Fusion Inc.

More information about the freebsd-questions mailing list