Environment Download (Install) fails - crashes OS
- Increase kernel parameters, rebuild the kernel and reboot the machine
The OS crashes during environment installs if the number of Units and Unit Relative references exceeds the number of available semaphore ID's. There is one table which contains all the Units. In addition, if any Unit Relative references exist (ie. in Unit Graphics) another table is created for the Unit Relativereferences. This means that an environment with 90 Units and a UnitGraphic for each with Unit Relative references will cause 91tables to be created.
Each table causes a semaphore to be allocated. Because of the implementation, there is actually a 'semaphore set'of size 1 allocated for each table. The kernel parameter which controls the number of semaphore sets is currently set to 100. In the OS1.4/xrelease, this number was set at 200.
The immediate fix is to use SAM to increase the kernel parameters, then rebuild the kernel and reboot the machine. Development is goingto reimplement the semaphore handling to be more efficient in our semaphore handling. We may also return the default to it's previous value.The software change is released in version OS1.6/2!!
The kernel parameters are: ParameterDescriptionOld ValueNew Valuesemmni##Number of semaphore ID's100300semmap##Max number of semaphore map entries102302
The actual values for these kernel parameters can be checked by viewing the file /stand/system (you will need root access to do this).
- My Operator Station has locked up