Comment 64 for bug 441653

Albert Zeyer (albertzeyer) wrote :

@David:

Read my comment #49. And also the linked Freedesktop bug. http://bugs.freedesktop.org/show_bug.cgi?id=29975

I read the relevant Xorg-server code and the same bug is still there and not fixed. There may be various possible reasons why VT_ACTIVATE succeeds but VT_WAITACTIVE will wait forever because in between, some other process has grabbed it.

A clean solution would be to do lock somehow the VT switching. I have read that this is possible, though very complicated and very messy.

Another possible fix/workaround would be do do the VT_ACTIVE in a endless loop in a separate thread and halt when either the VT_WAITACTIVE returns or when one of them return an error.

In any case, fixing this at another place than in Xorg would be the wrong way!