If I can give an almost obvious suggestion: I could most times recover working VTs with sshd loaded at startup and then, when the system was hung (due to a different bug, btw), connecting from another PC and killing X
If I can give an almost obvious suggestion: I could most times recover working VTs with sshd loaded at startup and then, when the system was hung (due to a different bug, btw), connecting from another PC and killing X