Debian Bug report logs -
#580564
kdb: Hangs under certain circumstances during boot with CONCURRENCY enabled
Reported by: Michael Guntsche <mike@it-loops.com>
Date: Thu, 6 May 2010 20:24:04 UTC
Severity: grave
Found in version insserv/1.14.0-1
Fixed in version insserv/1.14.0-2
Done: Petter Reinholdtsen <pere@debian.org>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 20:24:07 GMT) (full text, mbox, link).
Acknowledgement sent
to Michael Guntsche <mike@it-loops.com>:
New Bug report received and forwarded. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 20:24:07 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: insserv
Version: 1.14.0-1
Severity: important
Under certain circumstances the kbd init script just hangs during boot. While
Ctrl-C fixes this it is a big problem if you restart a remote server
only to find out that it is no longer reachable.
Since it only started happening recently I had a look at the problem and
found out the following.
Needed config to trigger the problem:
* run with latest insserv (1.14) version from sid and let it create the bootorder
* Boot with either startpar or makefile enabled
* Have CONSOLE_FONT set in the config of the kbd package
This results in a looping stty wth -ERESTARTSYS which is called in /bin/start_unicode.
Commenting CONSOLE_FONT or downgrading insserv to 1.12 and recreating the
bootorder with it fixes the problem.
So what's the difference between the two created insserv configs.
With the old version kbd is started alone
S17.....
S18kbd
S19......
With the new version it is started in parallel with other startup scripts
S18kbd
S18........
S18........
For some reasons this makes stty just loop.
For testing purposes I put the init script on its own level (S21kbd) and
it worked. As soon as it was started in parallel with other scripts it
hung. It did not matter which scripts ran in parallel. Downgrading insserv to an
older binary KEEPING the "broken" config did not work either so I think
the problem is older it just did not trigger so far since kdb(stty) always ran
alone.
Googling for stty -ERESTARTSYS showed that a similar problem
exists with bash as well (#547662). So maybe insserv is having the same
problem with stty now.
-- System Information:
Debian Release: squeeze/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 2.6.34-rc6
Locale: LANG=C, LC_CTYPE=de_AT.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash
Versions of packages insserv depends on:
ii libc6 2.10.2-6 Embedded GNU C Library: Shared lib
insserv recommends no packages.
Versions of packages insserv suggests:
ii bootchart 0.10~svn407-3.3 Boot process performance analyser
-- debconf information:
* insserv/enable: true
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 21:03:08 GMT) (full text, mbox, link).
Acknowledgement sent
to Petter Reinholdtsen <pere@hungry.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 21:03:08 GMT) (full text, mbox, link).
Message #10 received at 580564@bugs.debian.org (full text, mbox, reply):
[Michael Guntsche]
> So what's the difference between the two created insserv configs.
> With the old version kbd is started alone
Does it help to add "X-Interactive: true" in the LSB header of the kbd
init.d script? I suspect that is the correct solution to your
problem. :)
If it is, this bug should be reassigned to the package with the kbd
script.
Happy hacking,
--
Petter Reinholdtsen
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 21:15:08 GMT) (full text, mbox, link).
Acknowledgement sent
to Michael Guntsche <mike@it-loops.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 21:15:08 GMT) (full text, mbox, link).
Message #15 received at 580564@bugs.debian.org (full text, mbox, reply):
On 06 May 10 23:00, Petter Reinholdtsen wrote:
> Does it help to add "X-Interactive: true" in the LSB header of the kbd
> init.d script? I suspect that is the correct solution to your
> problem. :)
The header already has this.
### BEGIN INIT INFO
# Provides: kbd
# Required-Start: $remote_fs
# Required-Stop:
# Default-Start: S
# Default-Stop:
# X-Interactive: true
# Description: Set console screen modes and fonts
# Short-Description: Prepare console
### END INIT INFO
/Michael
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 21:21:11 GMT) (full text, mbox, link).
Acknowledgement sent
to Petter Reinholdtsen <pere@hungry.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 21:21:11 GMT) (full text, mbox, link).
Message #20 received at 580564@bugs.debian.org (full text, mbox, reply):
[Michael Guntsche]
> The header already has this.
OK. Good.
Can you provide the output from /usr/share/insserv/make-testsuite, for
us to try to reproduce the problem.
The insserv package already have a built time test to verify that the
X-Interactive work, and the test passed also for the new insserv
version. This make me suspect there is something with your set of
init.d scripts that are triggering this ordering.
Happy hacking,
--
Petter Reinholdtsen
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 21:36:08 GMT) (full text, mbox, link).
Acknowledgement sent
to Michael Guntsche <mike@it-loops.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 21:36:08 GMT) (full text, mbox, link).
Message #25 received at 580564@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
On 06 May 10 23:17, Petter Reinholdtsen wrote:
> [Michael Guntsche]
> > The header already has this.
>
> OK. Good.
>
> Can you provide the output from /usr/share/insserv/make-testsuite, for
> us to try to reproduce the problem.
>
Attached you'll find the output.
/Michael
[make-testsuite.out (text/plain, attachment)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Thu, 06 May 2010 22:24:33 GMT) (full text, mbox, link).
Acknowledgement sent
to Petter Reinholdtsen <pere@hungry.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Thu, 06 May 2010 22:24:33 GMT) (full text, mbox, link).
Message #30 received at 580564@bugs.debian.org (full text, mbox, reply):
[Michael Guntsche]
> Attached you'll find the output.
Thank you. I am able to reproduce the problem, but do not yet know
the cause. Got this on the first reordering test:
% ./insserv -p `pwd`/root/etc/init.d -c `pwd`/root/etc/insserv.conf -v
insserv: warning: script 'S08modutils' missing LSB tags and overrides
insserv: warning: script 'erl_crash.dump' missing LSB tags and overrides
insserv: warning: script 'modutils' missing LSB tags and overrides
insserv: There is a loop between service mediatomb and erl_crash.dump if stopped
insserv: loop involving service erl_crash.dump at depth 2
insserv: loop involving service mediatomb at depth 1
insserv: Stopping erl_crash.dump depends on mediatomb and therefore on system facility `$all' which can not be true!
insserv: exiting now without changing boot order!
%
Not quite sure why insserv claim there is a loop there, but removing
init.d/erl_crash.dump got rid of that problem. With that out of the
way, I could tell insserv to reorder the boot ordering and see that
the kbd script is not given its own sequence number.
% ./insserv -p `pwd`/root/etc/init.d -c `pwd`/root/etc/insserv.conf -v
insserv: warning: script 'S08modutils' missing LSB tags and overrides
insserv: warning: script 'modutils' missing LSB tags and overrides
insserv: remove service /home/pere/src/debiancvs/initscripts-ng-svn/trunk/src/insserv/root/etc/init.d/../rcS.d/S08modutils
insserv: enable service ../init.d/modutils -> /home/pere/src/debiancvs/initscripts-ng-svn/trunk/src/insserv/root/etc/init.d/../rcS.d/S18modutils
insserv: creating .depend.boot
insserv: creating .depend.start
insserv: creating .depend.stop
% ls root/etc/rcS.d/
S01mountkernfs.sh S08module-init-tools S15nfs-common
S02udev S08mtab.sh S16mountnfs.sh
S03mdadm-raid S09checkfs.sh S17mountnfs-bootclean.sh
S03mountdevsubfs.sh S09ifupdown S18alsa-utils
S04bootlogd S10mountall.sh S18bootmisc.sh
S05keymap.sh S11mountall-bootclean.sh S18fuse
S06hdparm S12mountoverflowtmp S18kbd
S06hostname.sh S13networking S18lm-sensors
S06hwclockfirst.sh S13procps S18modutils
S06lvm2 S13udev-mtab S18screen-cleanup
S07checkroot.sh S13x11-common S19stop-bootlogd-single
S08hwclock.sh S14portmap
S08ifupdown-clean S14rpcbind
%
I see from init.d/.depend.boot that kdb is not considered a
interactive script by insserv. It is just as if the X-Interactive
header no longer have any effect. :(
A workaround for you might be to list kbd as interactive in
/etc/insserv.conf. It seem to work as it should, but should not be
necessary.
Happy hacking,
--
Petter Reinholdtsen
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Fri, 07 May 2010 05:30:03 GMT) (full text, mbox, link).
Acknowledgement sent
to Michael Guntsche <mike@it-loops.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Fri, 07 May 2010 05:30:03 GMT) (full text, mbox, link).
Message #35 received at 580564@bugs.debian.org (full text, mbox, reply):
On 07 May 10 00:22, Petter Reinholdtsen wrote:
> I see from init.d/.depend.boot that kdb is not considered a
> interactive script by insserv. It is just as if the X-Interactive
> header no longer have any effect. :(
For other packages it seems to work ok (udev).
>
> A workaround for you might be to list kbd as interactive in
> /etc/insserv.conf. It seem to work as it should, but should not be
> necessary.
I tried that and it works here as well. KBD starts on its own again.
/Michael
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Fri, 07 May 2010 06:27:02 GMT) (full text, mbox, link).
Acknowledgement sent
to Petter Reinholdtsen <pere@hungry.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Fri, 07 May 2010 06:27:03 GMT) (full text, mbox, link).
Message #40 received at 580564@bugs.debian.org (full text, mbox, reply):
severity 580564 grave
thanks
[Michael Guntsche]
> For other packages it seems to work ok (udev).
Sure, but udev was already listed in insserv.conf.
> I tried that and it works here as well. KBD starts on its own again.
Good. I've been able to reproduce the problem with a simple test
case, which is commited to svn and will make sure we do not upload
with such problem again. The easiest way to see that insserv fail to
detect the X-Interactive: true flag is to look in
/etc/init.d/.depend.*, where the INTERACTIVE setting is wrong.
I've reported the problem upstream, and hope to have a fix available soon.
Raising severity to keep the broken insserv out of testing.
Happy hacking,
--
Petter Reinholdtsen
Severity set to 'grave' from 'important'
Request was from Petter Reinholdtsen <pere@hungry.com>
to control@bugs.debian.org.
(Fri, 07 May 2010 06:27:04 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Fri, 07 May 2010 07:42:15 GMT) (full text, mbox, link).
Acknowledgement sent
to Kel Modderman <kel@otaku42.de>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Fri, 07 May 2010 07:42:15 GMT) (full text, mbox, link).
Message #47 received at 580564@bugs.debian.org (full text, mbox, reply):
tags 580564 pending
thanks
On Friday 07 May 2010 16:22:53 Petter Reinholdtsen wrote:
> severity 580564 grave
> thanks
>
> [Michael Guntsche]
> > For other packages it seems to work ok (udev).
>
> Sure, but udev was already listed in insserv.conf.
>
> > I tried that and it works here as well. KBD starts on its own again.
>
> Good. I've been able to reproduce the problem with a simple test
> case, which is commited to svn and will make sure we do not upload
> with such problem again. The easiest way to see that insserv fail to
> detect the X-Interactive: true flag is to look in
> /etc/init.d/.depend.*, where the INTERACTIVE setting is wrong.
>
> I've reported the problem upstream, and hope to have a fix available soon.
>
> Raising severity to keep the broken insserv out of testing.
I committed 30_interactive_regexp_match_fix.patch which should fix the issue.
Thanks, Kel.
Added tag(s) pending.
Request was from Kel Modderman <kel@otaku42.de>
to control@bugs.debian.org.
(Fri, 07 May 2010 07:42:16 GMT) (full text, mbox, link).
Reply sent
to Petter Reinholdtsen <pere@debian.org>:
You have taken responsibility.
(Fri, 07 May 2010 09:42:10 GMT) (full text, mbox, link).
Notification sent
to Michael Guntsche <mike@it-loops.com>:
Bug acknowledged by developer.
(Fri, 07 May 2010 09:42:10 GMT) (full text, mbox, link).
Message #54 received at 580564-close@bugs.debian.org (full text, mbox, reply):
Source: insserv
Source-Version: 1.14.0-2
We believe that the bug you reported is fixed in the latest version of
insserv, which is due to be installed in the Debian FTP archive:
insserv_1.14.0-2.diff.gz
to main/i/insserv/insserv_1.14.0-2.diff.gz
insserv_1.14.0-2.dsc
to main/i/insserv/insserv_1.14.0-2.dsc
insserv_1.14.0-2_i386.deb
to main/i/insserv/insserv_1.14.0-2_i386.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to 580564@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Petter Reinholdtsen <pere@debian.org> (supplier of updated insserv package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@debian.org)
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Format: 1.8
Date: Fri, 07 May 2010 09:45:19 +0200
Source: insserv
Binary: insserv
Architecture: source i386
Version: 1.14.0-2
Distribution: unstable
Urgency: low
Maintainer: Petter Reinholdtsen <pere@debian.org>
Changed-By: Petter Reinholdtsen <pere@debian.org>
Description:
insserv - Tool to organize boot sequence using LSB init.d script dependenci
Closes: 578308 580564
Changes:
insserv (1.14.0-2) unstable; urgency=low
.
[ Kel Modderman ]
* Add 21_tweak_warnings.patch to make insserv warn about differing on
disk state/LSB runlevel info for the script(s) in its argument list.
(Closes: #578308)
* Add 100_show.patch which allows insserv --showall to dump start/stop
bit, sequence number, runlevels and script name in the format:
SK:NUM:RUNLEVELS:SCRIPT. It is commented out in quilt series file
until confirmation from #573004 that it is actually useful.
* Add 30_interactive_regexp_match_fix.patch which fixes failure to
properly match the correct group in the regular expression used on
the X-Interactive keyword. (Closes: #580564)
* Modify 92_m68k_alignment.patch so that the define is grouped in an
area of code which other similar defines live.
.
[ Petter Reinholdtsen ]
* Improve the output from make-testsuite.
* Adjust the test_x_interactive behaviour to make sure it fails with
a fatal error if X-Interactive: true do not work.
Checksums-Sha1:
6a1353c5a8ca95d907e2b57de897d7a9d5a00c72 1224 insserv_1.14.0-2.dsc
51b5b08498c03545ef5d1642206d0d1d8711bbf1 53673 insserv_1.14.0-2.diff.gz
e55cc124c207fb272a66a45be0108229b347adfc 70064 insserv_1.14.0-2_i386.deb
Checksums-Sha256:
2fbc4de4e36ebbf08186e316a125bd6a0eebba9e57b031047ce940eeb8e0999b 1224 insserv_1.14.0-2.dsc
6fdb22169b734e98465f8d06fbba9538458e8c4c74dfc15948aac845879b58d3 53673 insserv_1.14.0-2.diff.gz
4d26c465e48cffe2fefa88ca97a6ca503af7fb40aaa648f9ee136611e638a50f 70064 insserv_1.14.0-2_i386.deb
Files:
87d48167e81423405166133198f0215d 1224 misc optional insserv_1.14.0-2.dsc
da788d823b474a0730f23f2d4ad0a484 53673 misc optional insserv_1.14.0-2.diff.gz
6770771cfc5a54ef255c77daf32db1b9 70064 misc optional insserv_1.14.0-2_i386.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iD8DBQFL48gm20zMSyow1ykRAr1+AKCSEq7TZRilJDJxmi1wDzSSv3+k/QCgmSCb
UA6Eh/02TIP2rx6x20IwpBE=
=0PUj
-----END PGP SIGNATURE-----
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Fri, 07 May 2010 15:30:02 GMT) (full text, mbox, link).
Acknowledgement sent
to "Dr. Werner Fink" <werner@suse.de>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Fri, 07 May 2010 15:30:03 GMT) (full text, mbox, link).
Message #59 received at 580564@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
On Fri, May 07, 2010 at 08:19:20AM +0200, Petter Reinholdtsen wrote:
> Hi, Werner. Take a look at <URL: http://bugs.debian.org/580564 >.
> I've verified this with our test suite, and insserv no longer
> understand the X-Interactive: true header. This test suite function
> fail:
>
Please try out the attached patch
Werner
--
"Having a smoking section in a restaurant is like having
a peeing section in a swimming pool." -- Edward Burr
[insserv-interactive.dif (text/x-patch, attachment)]
Information forwarded
to debian-bugs-dist@lists.debian.org, Petter Reinholdtsen <pere@debian.org>:
Bug#580564; Package insserv.
(Fri, 07 May 2010 15:45:07 GMT) (full text, mbox, link).
Acknowledgement sent
to Petter Reinholdtsen <pere@hungry.com>:
Extra info received and forwarded to list. Copy sent to Petter Reinholdtsen <pere@debian.org>.
(Fri, 07 May 2010 15:45:07 GMT) (full text, mbox, link).
Message #64 received at 580564@bugs.debian.org (full text, mbox, reply):
[Werner Fink]
> Please try out the attached patch
Thank you. Kel proposed a very similar patch earlier today, which
worked for me. Sorry I have been to busy to pass it on before now.
Description: Fix regular expression match for X-Interactive keyword, it was
off-by-one match group and thus always returned 'X-'.
From: Kel Modderman <kel@otaku42.de>
---
--- a/insserv.c
+++ b/insserv.c
@@ -1378,10 +1378,10 @@ static uchar scan_lsb_headers(const int
description = empty;
}
- if (!interactive && regexecutor(®.interact, COMMON_ARGS) == true) {
- if (val->rm_so < val->rm_eo) {
- *(pbuf+val->rm_eo) = '\0';
- interactive = xstrdup(pbuf+val->rm_so);
+ if (!interactive && regexecutor(®.interact, COMMON_SHD_ARGS) == true) {
+ if (shl->rm_so < shl->rm_eo) {
+ *(pbuf+shl->rm_eo) = '\0';
+ interactive = xstrdup(pbuf+shl->rm_so);
} else
interactive = empty;
}
Happy hacking,
--
Petter Reinholdtsen
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Sun, 06 Jun 2010 07:34:52 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Fri Jan 12 13:31:29 2024;
Machine Name:
buxtehude
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.