Comment 5 for bug 46682

Revision history for this message
Mark Jenkins (mark-parit) wrote : patch to fix race condition due to too early fork in ksplash

A patch that closes this bug.

ksplash backgrounds itself early on so the startup process in /usr/bin/startkde can continue. ksplash is doing this too early, and it leads to a race condition where if ksplash loses the race, the programs started by startkde will do their work, send a signal to ksplash, and the signal will fail to be used due to ksplash not being ready for it yet. After losing the race ksplash will hang, waiting for fellow racers who are long gone.

I believe this patch moves the backgrounding forward to a point where ksplash is guaranteed to be ready for these signals. I have tested it with the above anti-patch applied, and without. There is no noticeable performance loss in the startup process.