HP-UX Reference (11i v2 04/09) - 5 Miscellaneous Topics (vol 9)

n
nsysmap(5) nsysmap(5)
(Tunable Kernel Parameters)
NAME
nsysmap, nsysmap64 - number of entries in a kernel dynamic memory allocation map
VALUES
Default
8400
Allowed Values
Any positive value.
In practice, very small values will likely cause a panic during boot (or soon after) and very large values
are probably unnecessary. Changing the tunable from the default is only necessary under certain condi-
tions.
DESCRIPTION
This value sizes the kernel dynamic memory resource map, an array of address/length pairs that describe
the free virtual space in the kernel’s dynamic address space.
This array has historically been statically-sized. That means certain pathological workloads that frag-
ment the kernel address space will result in too many entries for the array. Rather than panicking when
this condition occurs, the system throws away the last entry, which results in "leaked" kernel virtual
address space. If this overflow happens often enough, the system eventually runs out of virtual space and
will panic with the following message:
kalloc: out of virtual space.
By making the map size tunable, the system can automatically scale the map size according to the system
workload size and avoid this problem. If the automatic scaling does not work, you can hand-tune to fit a
particular workload. When the default value is overridden, the kernel may increase the value beyond the
your specification depending on the system size.
There are different tunables for 32- and 64-bit kernel because the 64-bit kernel has more virtual address
space. The
nsysmap tunable controls 32-bit kernels and the nsysmap64 tunable controls 64-bit ker-
nels.
Who Is Expected to Change This Tunable?
Only those experiencing the resource map overflow will need to modify this tunable.
Restrictions on Changing
Changes to this tunable take effect at the next reboot.
When Should the Value of This Tunable Be Raised?
The following message will appear on the console when the resource map overflow occurs:
sysmap{32|64}: rmap ovflo, lost [X,Y)
.
If this happens only occasionally, no action is necessary. If this happens with any sort of frequency, the
tunable should be increased, or the following panic message may occur:
kalloc: out of kernel virtual space.
When increasing
nsysmap{32|64}, doubling the tunable value is a reasonable rule of thumb. If the
problem persists after doubling the tunable several times from the default, there is likely to be a more
serious kernel problem, and you should contact HP support to investigate.
What Are the Side Effects of Raising the Value of This Tunable?
Kernel memory use increases very slightly. Depending on the workload, if the tunable is quite large, the
performance of kernel memory allocation may be affected.
When Should the Value of This Tunable Be Lowered?
Lowering this tunable from the default is risky, in all probability unnecessary, and should only be done
after first consulting HP support.
What Are the Side Effects of Lowering the Value of This Tunable?
A much higher probability of resource map overflows eventually leading to a kernel panic.
Section 5248 Hewlett-Packard Company 1 HP-UX 11i Version 2: September 2004