Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 225847 - app-admin/sysklogd-1.5 klogd segfault at startup
Summary: app-admin/sysklogd-1.5 klogd segfault at startup
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: x86 Linux
: High normal (vote)
Assignee: Gentoo's Team for Core System packages
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2008-06-11 09:00 UTC by oRo
Modified: 2010-11-20 19:52 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description oRo 2008-06-11 09:00:17 UTC
Once sysklogd upgrade from 1.4.2_pre20061230-r2 to 1.5, klogd crashes at boot and when I try to start sysklogd

klogd[31247]: segfault at 00000046 eip b7eafa5d esp bfac3818 error 4

Reproducible: Always

Steps to Reproduce:
When upgrading to sysklogd 1.5
Comment 1 oRo 2008-06-11 09:00:25 UTC
Portage 2.1.5.4 (default-linux/x86/2007.0/desktop, gcc-4.1.2, glibc-2.7-r2, 2.6.24-gentoo-r6 i686)
=================================================================
System uname: 2.6.24-gentoo-r6 i686 Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz
Timestamp of tree: Tue, 10 Jun 2008 19:00:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p39
dev-java/java-config: 1.3.7, 2.1.6
dev-lang/python:     2.4.4-r13, 2.5.2-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 2.0.0
sys-apps/openrc:     0.2.5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.62
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10.1-r1
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   2.2.4
virtual/os-headers:  2.6.25-r4
ACCEPT_KEYWORDS="x86 ~x86"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-march=i686 -pipe -O2 -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/bind"
CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/splash /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=i686 -pipe -O2 -fomit-frame-pointer"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks parallel-fetch sandbox sfperms strict unmerge-orphans userfetch userpriv usersandbox"
GENTOO_MIRRORS="http://ftp.snt.utwente.nl/pub/os/linux/gentoo "
LANG="fr_FR.UTF-8"
LC_ALL="fr_FR.UTF-8"
LDFLAGS="-Wl,-O1 -Wl,--sort-common -s"
LINGUAS="fr"
MAKEOPTS="-j5"
PKGDIR="/usr/portage/packages/"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/wschlich-testing /usr/portage/local/layman/sunrise /usr/local/portage /usr/local/portage/xgl-coffee"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X a52 aac acl acpi alsa amr ao aotuv apm asf async automount avahi avi bash-completion berkdb bitmap-fonts bluetooth browserplugin bzip2 cairo cddb cdr cli cracklib crypt cups dbus dhcp directfb divx4linux dmi dri dts dv dvb dvd dvdr dvdread dxr3 eds emboss encode escreen esd evo exif exscalibar extensions fam fame fbcon fbsplash ffmpeg firefox flac fortran gdbm gif gimp gimpprint glitz gnome gphoto2 gpm gsm gstreamer gtk gtk2 hal hddtemp iconv icq ieee1394 ifp imagemagick ipod ipv6 irda isdnlog isight jabber jack jpeg jpeg2k kerberos kipi ldap libclamav libnotify libsexy lm_sensors logitech-mouse lzo mad madwifi midi mikmod mime mjpeg mmap mng modplug mono mp3 mpeg mudflap musepack musicbrainz mysql mythtv nautilus ncurses netjack network nforce2 nfs njb nls nntp nptl nptlonly nsplugin nvidia nvtv oav ogg oggvorbis ole onoe opengl openmp oss pam pcmcia pcre pda pdf perl png portaudio pppd python qt qt3 qt3support qt4 quicktime radius rdesktop readline reflection samba scanner sdl session slp smp sms speex spell spl sqlite ssl svg swat sysfs syslog szip tcpd theora tiff truetype truetype-fonts type1-fonts udev unicode usb v4l v4l2 vcd via vidix visualization vorbis widescreen wifi win32codecs wmf wxwindows x264 x86 xcb xine xinerama xml xml2 xorg xv xvid xvmc zeroconf zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1 	emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m 	maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic auth_digest authn_anon authn_dbd authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock dbd deflate dir disk_cache env expires ext_filter file_cache filter headers ident imagemap include info log_config logio mem_cache mime mime_magic negotiation proxy proxy_ajp proxy_balancer proxy_connect proxy_http rewrite setenvif so speling status unique_id userdir usertrack vhost_alias" DVB_CARDS="bcm3510 dibusb-usb1 dibusb-usb2 nxt2002 nxt200x or51132 or51211 sp8870 sp887x tda1004x ttpci ttusb-dec usb-a800 usb-bluebird usb-dib0700 usb-dtt200u usb-umt usb-vp702x usb-vp7045 usb-wt220u" ELIBC="glibc" INPUT_DEVICES="acecad evdev joystick keyboard mouse synaptics wacom" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="fr" LIRC_DEVICES="pctv" USERLAND="GNU" VIDEO_CARDS="fbev glint nv v4l vesa vga nvidia"
Comment 2 oRo 2008-06-11 09:09:38 UTC
ldd /usr/sbin/klogd 
	linux-gate.so.1 =>  (0xb7f4e000)
	libc.so.6 => /lib/libc.so.6 (0xb7df2000)
	/lib/ld-linux.so.2 (0xb7f4f000)
Comment 3 oRo 2008-06-11 09:12:55 UTC
2237 Jun 11 11:03:14 Sauron syslogd 1.5.0: restart.
2238 Jun 11 11:03:16 Sauron kernel: klogd 1.5.0, log source = /proc/kmsg started.
2239 Jun 11 11:03:16 Sauron kernel: Inspecting /System.map
2240 Jun 11 11:03:16 Sauron kernel: Inspecting /usr/src/linux/System.map
2241 Jun 11 11:03:16 Sauron kernel: Loaded 33325 symbols from /usr/src/linux/System.map.
2242 Jun 11 11:03:16 Sauron kernel: Symbols match kernel version 2.6.24.
2243 Jun 11 11:03:16 Sauron kernel: No module symbols loaded - kernel modules not enabled.
2244 Jun 11 11:03:16 Sauron klogd[16930]: segfault at 00000046 eip b7e13a5d esp bfb7f2a8 error 4
2245 Jun 11 11:05:09 Sauron exiting on signal 15
2246 Jun 11 11:06:11 Sauron klogd[22317]: segfault at 00000046 eip b7e4ea5d esp bff346e8 error 4
Comment 4 oRo 2008-06-11 10:12:55 UTC
gdb /usr/sbin/syslogd
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(no debugging symbols found)
(gdb) r -d
Starting program: /usr/sbin/syslogd -d
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)
Allocated parts table for 1024 file descriptors.
Starting.
(no debugging symbols found)
Called init.
Called allocate_log, nlogs = -1.
cfline(auth,authpriv.*                 /var/log/auth.log)
symbolic name: * ==> 255
symbolic name: auth ==> 32
symbolic name: authpriv ==> 80
leading char in action: /
filename: /var/log/auth.log
Called allocate_log, nlogs = 0.
cfline(*.*;auth,authpriv.none          -/var/log/syslog)
symbolic name: * ==> 255
symbolic name: none ==> 16
symbolic name: auth ==> 32
symbolic name: authpriv ==> 80
leading char in action: /
filename: /var/log/syslog
Called allocate_log, nlogs = 1.
cfline(daemon.*                        -/var/log/daemon.log)
symbolic name: * ==> 255
symbolic name: daemon ==> 24
leading char in action: /
filename: /var/log/daemon.log
Called allocate_log, nlogs = 2.
cfline(kern.*                          -/var/log/kern.log)
symbolic name: * ==> 255
symbolic name: kern ==> 0
leading char in action: /
filename: /var/log/kern.log
Called allocate_log, nlogs = 3.
cfline(lpr.*                           -/var/log/lpr.log)
symbolic name: * ==> 255
symbolic name: lpr ==> 48
leading char in action: /
filename: /var/log/lpr.log
Called allocate_log, nlogs = 4.
cfline(mail.*                          /var/log/mail.log)
symbolic name: * ==> 255
symbolic name: mail ==> 16
leading char in action: /
filename: /var/log/mail.log
Called allocate_log, nlogs = 5.
cfline(user.*                          -/var/log/user.log)
symbolic name: * ==> 255
symbolic name: user ==> 8
leading char in action: /
filename: /var/log/user.log
Called allocate_log, nlogs = 6.
cfline(uucp.*                          -/var/log/uucp.log)
symbolic name: * ==> 255
symbolic name: uucp ==> 64
leading char in action: /
filename: /var/log/uucp.log
Called allocate_log, nlogs = 7.
cfline(local6.debug                    /var/log/imapd.log)
symbolic name: debug ==> 7
symbolic name: local6 ==> 176
leading char in action: /
filename: /var/log/imapd.log
Called allocate_log, nlogs = 8.
cfline(mail.info                       -/var/log/mail.info)
symbolic name: info ==> 6
symbolic name: mail ==> 16
leading char in action: /
filename: /var/log/mail.info
Called allocate_log, nlogs = 9.
cfline(mail.warn                       -/var/log/mail.warn)
symbolic name: warn ==> 4
symbolic name: mail ==> 16
leading char in action: /
filename: /var/log/mail.warn
Called allocate_log, nlogs = 10.
cfline(mail.err                        /var/log/mail.err)
symbolic name: err ==> 3
symbolic name: mail ==> 16
leading char in action: /
filename: /var/log/mail.err
Called allocate_log, nlogs = 11.
cfline(news.crit                       /var/log/news/news.crit)
symbolic name: crit ==> 2
symbolic name: news ==> 56
leading char in action: /
filename: /var/log/news/news.crit
Called allocate_log, nlogs = 12.
cfline(news.err                        /var/log/news/news.err)
symbolic name: err ==> 3
symbolic name: news ==> 56
leading char in action: /
filename: /var/log/news/news.err
Called allocate_log, nlogs = 13.
cfline(news.notice                     -/var/log/news/news.notice)
symbolic name: notice ==> 5
symbolic name: news ==> 56
leading char in action: /
filename: /var/log/news/news.notice
Called allocate_log, nlogs = 14.
cfline(*.=debug;auth,authpriv.none;news.none;mail.none     -/var/log/debug)
symbolic name: debug ==> 7
symbolic name: none ==> 16
symbolic name: auth ==> 32
symbolic name: authpriv ==> 80
symbolic name: none ==> 16
symbolic name: news ==> 56
symbolic name: none ==> 16
symbolic name: mail ==> 16
leading char in action: /
filename: /var/log/debug
Called allocate_log, nlogs = 15.
cfline(*.=info;*.=notice;*.=warn;auth,authpriv.none;cron,daemon.none;mail,news.none          -/var/log/messages)
symbolic name: info ==> 6
symbolic name: notice ==> 5
symbolic name: warn ==> 4
symbolic name: none ==> 16
symbolic name: auth ==> 32
symbolic name: authpriv ==> 80
symbolic name: none ==> 16
symbolic name: cron ==> 72
symbolic name: daemon ==> 24
symbolic name: none ==> 16
symbolic name: mail ==> 16
symbolic name: news ==> 56
leading char in action: /
filename: /var/log/messages
Called allocate_log, nlogs = 16.
cfline(*.emerg                         *)
symbolic name: emerg ==> 0
leading char in action: *
write-all
Called allocate_log, nlogs = 17.
cfline(local2.*                -/var/log/ppp.log)
symbolic name: * ==> 255
symbolic name: local2 ==> 144
leading char in action: /
filename: /var/log/ppp.log
Opened UNIX socket `/dev/log'.
 0:  X  X  X  X FF  X  X  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/auth.log
 1: FF FF FF FF  X FF FF FF FF FF  X FF FF FF FF FF FF FF FF FF FF FF FF FF FF FILE: /var/log/syslog
 2:  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/daemon.log
 3: FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/kern.log
 4:  X  X  X  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/lpr.log
 5:  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.log
 6:  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/user.log
 7:  X  X  X  X  X  X  X  X FF  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/uucp.log
 8:  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FF  X  X FILE: /var/log/imapd.log
 9:  X  X 7F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.info
10:  X  X 1F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.warn
11:  X  X  F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/mail.err
12:  X  X  X  X  X  X  X  7  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.crit
13:  X  X  X  X  X  X  X  F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.err
14:  X  X  X  X  X  X  X 3F  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FILE: /var/log/news/news.notice
15: 80 80  X 80  X 80 80  X 80 80  X 80 80 80 80 80 80 80 80 80 80 80 80 80 80 FILE: /var/log/debug
16: 70 70  X  X  X 70 70  X 70  X  X 70 70 70 70 70 70 70 70 70 70 70 70 70 70 FILE: /var/log/messages
17:  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1  1 WALL: 
18:  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X  X FF  X  X  X  X  X  X FILE: /var/log/ppp.log
logmsg: syslog.info<46>, flags 4, from Sauron, msg syslogd 1.5.0: restart.
Called fprintlog, logging to FILE /var/log/syslog
Called fprintlog, logging to FILE /var/log/messages
syslogd: restarted.
Debugging disabled, SIGUSR1 to turn on debugging.

Program received signal SIGUSR1, User defined signal 1.
0xb7f3e410 in __kernel_vsyscall ()
(gdb) bt
#0  0xb7f3e410 in __kernel_vsyscall ()
#1  0xb7e9f6fd in select () from /lib/libc.so.6
#2  0x0804cc25 in ?? ()
#3  0x00000007 in ?? ()
#4  0xbf9bc1d4 in ?? ()
#5  0x00000000 in ?? ()
(gdb) quit
The program is running.  Exit anyway? (y or n) y
Comment 5 Jeroen Roovers (RETIRED) gentoo-dev 2008-06-11 13:02:06 UTC
The backtrace is useless. Try again after reading http://www.gentoo.org/proj/en/qa/backtraces.xml .
Comment 6 oRo 2008-06-11 20:41:13 UTC
I tried that but I don't know how to debug klogd, it's a kernel process I think  (inside square brackets)

I re-emerge sysklogd with -ggdb and without stripping 
When I launch klogd alone into gdb (with /etc/conf.d/sysklogd parameters), not detecting the segfault ...

# gdb /usr/sbin/klogd
GNU gdb 6.8
Copyright (C) 2008 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "i686-pc-linux-gnu"...
(no debugging symbols found)
(gdb) r -c 3 -2
Starting program: /usr/sbin/klogd -c 3 -2
(no debugging symbols found)
(no debugging symbols found)
(no debugging symbols found)

And a ps tell me ::
root     27959 27957  0 22:18 pts/2    00:00:00 /usr/sbin/klogd -c 3 -2
root     27962 27959  0 22:18 ?        00:00:00 [klogd] <defunct>

And messages ::
Jun 11 22:18:20 Sauron klogd[27939]: segfault at 00000046 eip b7e516cd esp bfe16338 error 4

Do I need to do a kernel debugging ?
Comment 7 oRo 2008-06-12 10:27:41 UTC
After a log analyse, I realize that :
*) the 1.5 version loaded /usr/src/linux/System.map
*) the 1.4 version not 

3596 Jun 11 22:16:19 Sauron syslogd 1.5.0: restart.
3597 Jun 11 22:16:20 Sauron kernel: klogd 1.5.0, log source = /proc/kmsg started.
3598 Jun 11 22:16:20 Sauron kernel: Inspecting /System.map
3599 Jun 11 22:16:20 Sauron kernel: Inspecting /usr/src/linux/System.map
3600 Jun 11 22:16:20 Sauron kernel: Loaded 33325 symbols from /usr/src/linux/System.map.
3601 Jun 11 22:16:20 Sauron kernel: Symbols match kernel version 2.6.24.
3602 Jun 11 22:16:20 Sauron kernel: No module symbols loaded - kernel modules not enabled.
3603 Jun 11 22:16:20 Sauron klogd[27939]: segfault at 00000046 eip b7e516cd esp bfe16338 error 4

3607 Jun 11 22:43:10 Sauron syslogd 1.4.1: restart.
3608 Jun 11 22:43:11 Sauron kernel: klogd 1.4.1, log source = /proc/kmsg started.
3609 Jun 11 22:43:11 Sauron kernel: Inspecting /System.map
3610 Jun 11 22:43:11 Sauron kernel: Cannot find map file.


Could "this" might be the reason of segfault ?
NB : the link /usr/src/linux is correct
Comment 8 Sloter 2008-07-06 16:02:43 UTC
Not sure it is a segmentation fault on my side but since sysklogd-1.5 the klogd deamon is not starting at boot and neither after
foo@bar $ sudo /etc/init.d/sysklogd start
Password: 
 * sysklogd -> start: syslogd ...                         [ ok ]
 * sysklogd -> start: klogd ...
 * start-stop-daemon: failed to start `/usr/sbin/klogd'
 * Failed to start klogd                                  [ !! ]
 * sysklogd -> stop: syslogd ...                          [ ok ]
 * ERROR: sysklogd failed to start

Reproducible: Always


Then I emerged =sysklod-1.4 and boot was fine.
Comment 9 Dmitri Pogosian 2010-09-18 05:21:24 UTC
Just installed sysklog-1.5 and it does indeed segfaults as reported.
Comment 10 SpanKY gentoo-dev 2010-11-20 17:39:09 UTC
should be fixed in sysklogd-1.5-r1
Comment 11 barthek 2010-11-20 19:52:52 UTC
wow! two and half year later. cool :)