On two of our Redhat 5.2 machines, we has experienced a crasy /sbin/init. We discovered that the machines had lots of zombi processes. 'ps axl' on other machiens tells me that init normally rests in 'do_select'. On the problematic machines, it rested in 'pause', and did not respond to any signals. The zombi processes was a result of init not collecting its childs. I beleave this has happended when the machines in question went out of free memory - a runaway netscape. rwhod, syslogd and crond was also dead. init should not go crasy in any case, so the problem should be fixed.
There are many, many problems, not just with /sbin/init, that occur when there is insufficient swap space to run linux.