I think that rc.sysinit is too big, it does many things that could be done early (or late) in the normal boot sequence. It also does some things that can lock a machine (loading sound modules) that would make recovering with single user impossible. Attached is a prelimarly patch that moves the kernel /boot stuff into an early part of the SysV init, and the sound drivers into a later part, also saving the sound driver settings at service shutdown (rather than in rc.halt). The patch needs a cleanup, a sainity check (I don't have sound in my test machine yet), and symlinks etc need to be added, but this gives you a start. This is similar to bug 14672 and I hope that both can find there way into a future initscripts release.
Created attachment 7163 [details] Patch to move parts of rc.local into SysV subsystems
Sorry, that patch is for rc.sysinit not rc.local
*** This bug has been marked as a duplicate of 67681 ***