Solaris 10

On Solaris 10, all System V inter-process communication (IPC) facilities are either automatically configured or can be controlled by resource controls. The following kernel parameters are either removed or commented out from /etc/system:

semsys:seminfo_semmap
semsys:seminfo_semmns
semsys:seminfo_semmnu
semsys:seminfo_semume
shmsys:shminfo_shmmin
shmsys:shminfo_shmseg

The following obsolete IPC tunables are replaced by their resource controls with the new default values:

semsys:seminfo_semmsl
semsys:seminfo_semmni
shmsys:shminfo_shmmax
shmsys:shminfo_shmmni

The default value for the resource control names related to above four IPC tunables on Solaris 10 are:

process.max-sem-nsems   512
project.max-sem-ids    128
project.max-shm-memory   1/4 of physical memory
project.max-shm-ids   128

The project.max-shm-memory resource control limits the total amount of shared memory of one project. Previously, the shmsys:shminfo_shmmax parameter limited the size of a single, shared memory segment.

On systems that have zones enabled, zone-wide resource controls are specified in the zone configuration. Refer to the rctladm(1m) man page for more information about available resource controls.

If you have problems creating and starting multiple Informix servers on the same Solaris 10 host, and are getting share memory create errors, adjust the default project value of the project.max-shm-memory kernel parameter.

Examples:

To display the current value of the project.max-shm-memory set to the project and system wide, enter:

# prctl -n project.max-shm-memory -i project default
Note: IDS is running under the default project.

To display the values of all the resource controls for a specific IDS process, enter:

# prctl <oninit pid>

To change the setting for project.max-shm-memory to 64 GB for the project default without a system reboot, enter:

# prctl -n project.max-shm-memory -r -v 64gb -i project default

As an alternative to the examples, use the projmod command to modify the attribute value for project.max-shm-memory in /etc/project which is a local source of project information file:

# projmod -a -K 'project.max-shm-memory=(priv,64GB,deny)' 
default

Feedback