[Splashy-devel] Bug#421441: splashy: splashy->gdm hangs system randomly

Geoffrey L. Brimhall vinyvat at gmail.com
Sun Apr 29 06:28:09 UTC 2007


Package: splashy
Version: 0.3.2
Severity: important

There is a race condition between when splashy ends and gdm starts that
happens on my system about 1 in 3 boots, when it happens the splashy
screen is just "hangs" and console switching to X doesn't work. Think it
may be related to my system being SMP (dual core ).

This bug is really identical to #350179 - so either close this bug or
re-open that one !

By updating the gdm and splashy scripts I got rid of the race condition,
here's the fix ( note the fix really requires updating all display
manager scripts to be aware if a boot gui is being used, if so shut it
down ):

REMOVE from splashy script in the "start" sequence:

        else
            log_daemon_msg "Stopping $DESC" $NAME
            /sbin/splashy_update exit
            log_end_msg $?
            # wait until splashy exits before changing tty's
            while `pidof splashy > /dev/null`; do
                sleep 0.2
            done
            # do some magic with the TTYs
            if test -z "$CHVT_TTY"; then
		CHVT_TTY=1
            fi
            # detect X, if not, go to CHVT_TTY
            X11_RUNNING=1
            pidof X > /dev/null && X11_RUNNING=1
            if [ $X11_RUNNING -eq 1 ]; then
                splashy_chvt 7
            else
                splashy_chvt $CHVT_TTY
            fi

ADD to gdm script the above functionality, before the "start_daemon"
command:

      # Disable splashy if running
      if `pidof splashy > /dev/null`; then
            log_daemon_msg "Stopping $DESC" $NAME
            /sbin/splashy_update exit
            /sbin/splashy_chvt 7
            log_end_msg $?
      fi


-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable')
Architecture: amd64 (x86_64)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18.1-i8-smp
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)

Versions of packages splashy depends on:
ii  libc6                       2.3.6.ds1-13 GNU C Library: Shared
libraries
ii  libglib2.0-0                2.12.4-2     The GLib library of C
routines
ii  libmagic1                   4.17-5etch1  File type determination
library us
ii  libsplashy0                 0.3.2        Library to draw splash
screen on b
ii  zlib1g                      1:1.2.3-13   compression library -
runtime

Versions of packages splashy recommends:
ii  lsb-base                      3.1-23.1   Linux Standard Base 3.1
init scrip

-- no debconf information






More information about the Splashy-devel mailing list