This is the mail archive of the cygwin-xfree mailing list for the Cygwin XFree86 project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Problem with new xinit - console window doesn't open (but bash starts)


On 22/11/2009 20:24, Jon TURNEY wrote:
On 20/11/2009 15:05, Jim Reisert AD1C wrote:
I tried adding the missing fonts. I tried SET LANG=C
Starting the X server is still unpredictable.

Does this mean it sometimes works and sometimes doesn't? Or does it mean it fails in different ways each time you try?

Now my log file (attached) shows:

It also claims another window manage is running (and therefore shuts
down), which is untrue (there is no other Xwin process running).

Since I have touched 'check for another window manager' code recently, I was kind of expecting to see that I'd managed to break it in some way, but..

I'm not quite sure what to make of that log file. This is very strange.

If you look for "(II) xorg.conf is not supported", you'll see that it
looks like that server starts again about half-way through.

I did wonder if you were managing to somehow start two copies of XWin
near-simultaneously, but I don't think that would produce a logfile like
that (since it's not opened in append mode, you probably get the logfile
from the last process to close it or something like that)

An alternative explanation is that there is a really inconveniently
timed server regeneration happening: just after the internal client
threads have been created, but before they can connect, so they are
still hanging around to be accepted by the next server generation.

If we did have twice as many threads as we are supposed to, that would
explain the final failure due to another WM running (as there's another
WM thread, note that there are two 'winMultiWindowXMsgProc - Hello' lines)

No idea why the server is regenerating though, needs more meditation :-)

After some meditation, I think that the server regeneration may be being caused by a race condition introduced by the use of checkX in the startxwin.bat script: If checkX connects to and then disconnects from the Xserver before the internal client threads get a chance to connect, the Xserver will restart when checkX disconnects, causing these duplicate threads.


Fortunately, this should have a simple workaround of removing the checkX line from startxwin.bat (or replacing it with a delay if you care about getting an xterm started by it)

The correct fix for this behaviour is not immediately obvious, and I don't really have time to work on it at the moment, so I don't have a patch for this.

--
Jon TURNEY
Volunteer Cygwin/X X Server maintainer

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://x.cygwin.com/docs/
FAQ:                   http://x.cygwin.com/docs/faq/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]