[Pkg-sysvinit-devel] Bug#454147: /sbin/bootlogd: bootlogd: deadlock under Xen domU, wrong console device

Vaclav Ovsik vaclav.ovsik at i.cz
Mon Dec 3 13:34:16 UTC 2007


Package: sysvinit
Version: 2.86.ds1-38
Severity: normal
File: /sbin/bootlogd

Hi,
there is problem with bootlogd under Xen domU, unless right console
device is specified on kernel command line.
Valid console device is tty1 for domU me and I'm not certein, this is
constant behavior (no knowledge). If I create domain with
    xm create -c etch
then logs in there and type tty, I get /dev/tty1.

When I add console=tty1 to kernel params of domain config file,
then bootlogd works as expected probably.

In the case of no console= in kernel command line bootlogd leaves in
deadlock eating up 100% VCPU and strace on it shows neverending:

open("/dev/ttyS0", O_WRONLY|O_NONBLOCK|O_NOCTTY) = 3
fcntl64(3, F_GETFL)                     = 0x801 (flags
O_WRONLY|O_NONBLOCK)
fcntl64(3, F_SETFL, O_WRONLY)           = 0
write(3, ".\r\n", 3)                    = -1 EIO (Input/output error)
close(3)                                = 0
open("/dev/ttyS0", O_WRONLY|O_NONBLOCK|O_NOCTTY) = 3
fcntl64(3, F_GETFL)                     = 0x801 (flags
O_WRONLY|O_NONBLOCK)
fcntl64(3, F_SETFL, O_WRONLY)           = 0
write(3, ".\r\n", 3)                    = -1 EIO (Input/output error)
close(3)                                = 0
...

There is comment in the source (before write_err() function)

/*
 *      We got a write error on the real console. If its an EIO,
 *      somebody hung up our filedescriptor, so try to re-open it.
 */

For some reason bootlogd suppose /dev/ttyS0 console device.
Regards.
-- 
zito

-- System Information:
Debian Release: 4.0
  APT prefers stable
  APT policy: (990, 'stable'), (500, 'unstable')
Architecture: i386 (i686)
Shell:  /bin/sh linked to /bin/bash
Kernel: Linux 2.6.18-5-xen-686
Locale: LANG=C, LC_CTYPE=cs_CZ.ISO-8859-2 (charmap=ISO-8859-2)

Versions of packages sysvinit depends on:
ii  initscripts            2.86.ds1-38       Scripts for initializing and shutt
ii  libc6                  2.3.6.ds1-13etch2 GNU C Library: Shared libraries
ii  libselinux1            2.0.35-0.icz.2    SELinux shared libraries
ii  libsepol1              2.0.11-0.icz.1    Security Enhanced Linux policy lib
ii  sysv-rc                2.86.ds1-38       System-V-like runlevel change mech
ii  sysvinit-utils         2.86.ds1-38       System-V-like utilities

sysvinit recommends no packages.

-- no debconf information





More information about the Pkg-sysvinit-devel mailing list