ORA-00600 [KSLGES_3]/ORA-27300

When using RHEL 7.2 you may encounter some database crash with the errors below:

ORA-27157: OS post/wait facility removed
ORA-27300: OS system dependent operation:semop failed with status: 43
ORA-27301: OS failure message: Identifier removed
ORA-27302: failure occurred at: sskgpwwait1
ORA-00600: internal error code, arguments: [KSLGES_3], [], [], [], [], [], [], [], [], [], [], []
ORA-27300: OS system dependent operation:semop failed with status: 43
ORA-27301: OS failure message: Identifier removed

Redhat 7.2, systemd-logind service introduced a new feature to remove all IPC objects when a user fully logs out.
The feature is controled by the option RemoveIPC in the /etc/systemd/logind.conf configuration file, see man logind.conf(5) for details.

The default value for RemoveIPC in RHEL7.2 is yes.

As a result, the OS may removes shared memory segments and semaphores for those users.
As Oracle ASM and Databases use shared memory segments for SGA, removing shared memory segments will crash the Oracle ASM and database instances.

A new systemd feature was introduced in Red Hat Enterprise Linux 7.2: cleanup of all allocated inter-process communication (IPC) resources with the last session a user finishes. A session can be an administrative cron job or an interactive session.

This behavior can cause daemons running under the same user, and using the same resources, to terminate unexpectedly.

To work around this problem, edit the file /etc/systemd/logind.conf and add the following line:
RemoveIPC=no

Then, execute the following command, so that the change is put into effect:
systemctl restart systemd-logind.service
After performing these steps, daemons no longer crash in the described situation.

“can’t open the fdp output file linkorderfile” Error

“can’t open the fdp output file linkorderfile” warning is seen during oracle binary link on HP Unix.

This problem can happen if you invoke “make -f $ORACLE_HOME/rdbms/lib/ins_rdbms_mk ioracle” from directory different from $ORACLE_HOME/rdbms/lib
The problem can happen on scripts tha call “ins_rdbms.mk ioracle”, for example, the “chopt” script can hit this problem.

Workaround
“cd $ORACLE_HOME/rdbms/lib” and rerun the command.