pa_maxssiz.5 (2010 09)
p
pa_maxssiz(5)
Integrity Systems Only
pa_maxssiz(5)
(Tunable Kernel Parameters)
NAME
pa_maxssiz: pa_maxssiz_32bit, pa_maxssiz_64bit - maximum size (in bytes) of the stack for a user pro-
cess running under the PA-RISC emulator on an Integrity system
VALUES
Default
32 bit default:
0x04FC6000 (79Mb)
64 bit default:
0x20000000 (512Mb)
Allowed values
32 bit minimum:
0x04FC6000 (79Mb)
32 bit maximum:
0x1BF00000 (447Mb)
64 bit minimum:
0x20000000 (512Mb)
64 bit maximum:
0xA0000000 (2.5Gb)
DESCRIPTION
User programs on HP-UX systems are composed of five discrete segments of virtual memory: text (or
code), data, stack, shared, and I/O.
PA-RISC binaries running under Itanium-based system using the PA-RISC emulator have their stack seg-
ment size (which includes both the memory stack and the RSE stack) determined by
pa_maxssiz_32bit
or pa_maxssiz_64bit.
The emulated stack from the process perspective is the same as the stack if the process were executed on
a PA-RISC machine without the emulator. The actual (non-emulated) process stack (both memory and
RSE) for an emulated process are of a non-configurable size and are used solely for the internal use of the
emulator for a PA-RISC process on Itanium-based system. This tunable therefore represents the required
value of
maxssiz or maxssiz_64bit
on a corresponding PA-RISC machine to execute the emulated
process plus working space for the emulator itself.
As with the stack address space sized by
maxssiz, the address space used by the emulator is both
private to the process and not usable for other purposes regardless of whether the emulator stack grows
to encompass the full range or not. As a consequence, the tunable value may be viewed as an amount of
process data address space which will be unavailable to this PA-RISC process. Caution is advised espe-
cially for 32 bit processes since the default address space model only provides 1 Gb of private data space.
Setting this tunable too high will result in execution failure when other allocations (private mmap() calls
or sbrk() calls) fail due to insufficient available address space. If this occurs, revise the address space
model of the failing PA-RISC executable using chatr to allow more private data virtual address space or
lower the tunable.
Who is Expected to Change This Tunable?
Anyone.
Restrictions on Changing
Given that the user memory stack size is not modifiable by this tunable, it is expected that detailed
knowledge of the PA-RISC emulator memory usage is needed before modifying this tunable.
When Should the Value of This Tunable Be Raised?
This tunable should be raised if the PA-RISC emulator on Itanium-based system requires additional
space for stack emulation.
What Are the Side Effects of Raising the Value?
The PA-RISC emulator will use more of the virtual address space for stack, leaving less virtual address
space for data allocations. Raising the value too high will result in application failure when data alloca-
tions fail due to insufficient virtual address space.
Since it may not be known which processes are based off of PA-RISC binaries and which off Itanium-
based binaries, arbitrary raising of this tunable is discouraged.
When Should the Value of This Tunable Be Lowered?
This tunable should only be lowered if the workload for the PA-RISC emulator is known on the system,
more space than is needed is currently used for stack emulation, and swap space (either reserved or allo-
cated) is at a premium on the system.
HP-UX 11i Version 3: September 2010 − 1 − Hewlett-Packard Company 1