[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

XDM loop: Alternate fix?



Tusen takk!  ('thousand thanx' in Norsk)

I was thinking about it some, though, and there may be a problem with the 
5sec thing.  A slower machine might never make it into XDM with no clue 
why simply because it can't load the server in <5sec.

I just though of (but haven't implemented or tested) an alternate solution:

/etc/X11/xdm/Xservers lists the servers that XDM starts explicitly.  It 
always (unless your machine is headless, in which case Watch Out!) contains 
a line reading:

:0 local /usr/X11R6/bin/X

Other lines can be added for 'push-mode' X terminal support, but anyway...
What if, rather than using an async catch (your method), we just call out 
to a script instead of the server?  The script would 'own' (ppid) the 
server, and would check for fatal errors.  Assuming the X server output can 
be interpreted as either pass or fail, possibly with some timings factoring 
in, this script would simply `xdm stop` if there are problems.

I'll try this out on alpha here, but does anyone see any problems with this 
method?  I think both methods would work in most cases, but Rick's async
catch might leave the door open for false-positives (slow-start
pseudo-failure) with a fixed time delay.

Comments?

     Erik Walthinsen <omega@seul.org> - SEUL Project system architect
        __
       /  \                SEUL: Simple End-User Linux -
      |    | M E G A            Creating a Linux distribution
      _\  /_                         for the home or office user