Using iBCS2 emulation ONLY with IBCS2 Binaries ONLY; Any iBCS2 (COFF/SCO) binary which forks a process (child process) will get the next PID (ranging from X to 99999, see /sys/sys/proc.h), but most iBCS2 binaries have an upper PID limit of around 32700 (short int). So after the PID count exceeds this value, the program will crash (core dump). It may give an error of 'can't fork process' or similar. Fix: - Modify the /sys/sys/proc.h change PID_MAX from 99999 to a safe value of 32759, and also change NO_PID from 100000 to a safe value of 32760. - Remake the kernel & reboot. This should be included as a WARNING in the documentation for IBCS2 emulation. Or modified automatically if the option for iBCS2 is included in the /etc/rc.conf file. How-To-Repeat: The problem will not reproduce itself until the current PID reaches around 32700 which may not happen for some time after a boot or reboot. Wait for the PID number to exceed 'short int', and for an iBCS2 program to fork a child process.
State Changed From-To: open->feedback Is this still a problem with modern versions of FreeBSD?
Responsible Changed From-To: freebsd-bugs->emulation This looks like an error in the emulation code.
State Changed From-To: feedback->closed Duplicate of i386/11165.
*** Bug 11165 has been marked as a duplicate of this bug. ***