Package: discover1 Version: 1.7.12 Severity: normal Tags: patch Many thanks for the quick fix to #316808. This is a similar problem which I didn't spot at the time. The init script uses /var/lib/discover for a working file. /var may not be mounted at the first run of discover, either.
This isn't as serious as #316808 as discover still runs and a problematic module can be blacklisted manually. I'll attach a patch which, however, you probably won't want to use, because it assumes you can write into /lib - probably a wrong assumption. Should it be /tmp ? Nick -- System Information: Debian Release: 3.1 APT prefers unstable APT policy: (2, 'unstable') Architecture: i386 (i686) Kernel: Linux 2.6.11-1-k7 Locale: LANG=en_GB, LC_CTYPE=en_GB (charmap=ISO-8859-1) Versions of packages discover1 depends on: ii discover1-data 1.2005.07.31 hardware lists for libdiscover1 ii libc6 2.3.2.ds1-22 GNU C Library: Shared libraries an ii libdiscover1 1.7.12 hardware identification library -- debconf information: * discover/manage_cdrom_devices: true * discover/cdrom_base_mountpoint: /media/ discover/cdrom_base_mountpoint_error:
--- /home/leveret/backports/discover1-1.7.13/discover/discover.init.orig 2005-07-10 17:20:38.000000000 +0100 +++ /home/leveret/backports/discover1-1.7.13/discover/discover.init 2005-09-03 01:38:06.000000000 +0100 @@ -13,6 +13,9 @@ # file that controls this init script's management of device symlinks INITFILE=/etc/default/discover +# module we're loading, if it crashes then we know the culprit and can skip it +CRASHFILE=/lib/discover/crash + # cache, used more than once KVERS=$(uname -r) @@ -48,12 +51,12 @@ echo "$result" } -if [ -f /var/lib/discover/crash ] +if [ -f $CRASHFILE ] then # The system crashed trying to load a module during the last boot # cycle, so add an appropriate "skip" line to the skip file: - echo "skip $(</var/lib/discover/crash)" >> $SKIPFILE - rm -f /var/lib/discover/crash + echo "skip $(<$CRASHFILE)" >> $SKIPFILE + rm -f $CRASHFILE sync fi @@ -206,11 +209,11 @@ log_success_msg "Loading $MODULE module..." fi - # Note the module being loaded in /var/lib/discover/crash. If loading + # Note the module being loaded in $CRASHFILE. If loading # the module crashes the machine, this file will exist at the next # boot, and we'll add an appropriate "skip" line to the conffile so we # don't try to load it again. - echo $MODULE > /var/lib/discover/crash + echo $MODULE > $CRASHFILE sync # '|| true' make sure we start up, even if one module fails to load. @@ -218,7 +221,7 @@ # The module loaded without incident, so we can safely remove the crash # file. - rm -f /var/lib/discover/crash + rm -f $CRASHFILE sync done