"F9 was particularly bad for this. Ray had done some pretty
serious surgery to rhgb to try to minimize its impact on boot time.
Not only is X not especially fast to initialize on its own
(although better now than it was), but due to the design of rhgb,
all of init would pause until X came up. For F9 we tried to fix
this by launching X sort of in parallel with the rest of init and
queueing up console messages until the vte widget was ready. This
never really worked right either, partly because it’s just
too hard to get all the corner cases right, fsck failing and so
forth. We also kept running into race conditions with the tty layer
where the kernel would deadlock between the rhgb X server coming
down and the gdm X server coming up. Eventually we just punted,
reverted back to more or less the rhgb we shipped in F8, and
resolved to drop it from F10."