Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
top segfaults
View unanswered posts
View posts from last 24 hours

Goto page 1, 2, 3  Next  
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Tue Jan 01, 2008 2:02 pm    Post subject: top segfaults Reply with quote

Code:
me@box ~ $ top
Segmentation fault
Code:
me@box ~ $ strace top
execve("/usr/bin/top", ["top"], [/* 78 vars */]) = 0
brk(0)                                  = 0x611000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b2a581b4000
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b2a581b5000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
open("/etc/ld.so.cache", O_RDONLY)      = 3
fstat(3, {st_mode=S_IFREG|0644, st_size=231911, ...}) = 0
mmap(NULL, 231911, PROT_READ, MAP_PRIVATE, 3, 0) = 0x2b2a581b6000
close(3)                                = 0
open("/lib/libproc-3.2.7.so", O_RDONLY) = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\320>\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0555, st_size=60096, ...}) = 0
mmap(NULL, 2236504, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b2a583b5000
mprotect(0x2b2a583c2000, 2097152, PROT_NONE) = 0
mmap(0x2b2a585c2000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0xd000) = 0x2b2a585c2000
mmap(0x2b2a585c4000, 77912, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2b2a585c4000
close(3)                                = 0
open("/lib/libncurses.so.5", O_RDONLY)  = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0@\16\2\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=379856, ...}) = 0
mmap(NULL, 2478296, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b2a585d8000
mprotect(0x2b2a58627000, 2093056, PROT_NONE) = 0
mmap(0x2b2a58826000, 61440, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x4e000) = 0x2b2a58826000
mmap(0x2b2a58835000, 216, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2b2a58835000
close(3)                                = 0
open("/lib/libc.so.6", O_RDONLY)        = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\360\342\1\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=1326224, ...}) = 0
mmap(NULL, 3433624, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b2a58836000
mprotect(0x2b2a58973000, 2097152, PROT_NONE) = 0
mmap(0x2b2a58b73000, 20480, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x13d000) = 0x2b2a58b73000
mmap(0x2b2a58b78000, 17560, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_ANONYMOUS, -1, 0) = 0x2b2a58b78000
close(3)                                = 0
open("/lib/libdl.so.2", O_RDONLY)       = 3
read(3, "\177ELF\2\1\1\0\0\0\0\0\0\0\0\0\3\0>\0\1\0\0\0\20\16\0\0\0\0\0\0"..., 832) = 832
fstat(3, {st_mode=S_IFREG|0755, st_size=14512, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b2a58b7d000
mmap(NULL, 2109696, PROT_READ|PROT_EXEC, MAP_PRIVATE|MAP_DENYWRITE, 3, 0) = 0x2b2a58b7e000
mprotect(0x2b2a58b80000, 2097152, PROT_NONE) = 0
mmap(0x2b2a58d80000, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_FIXED|MAP_DENYWRITE, 3, 0x2000) = 0x2b2a58d80000
close(3)                                = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b2a58d82000
arch_prctl(ARCH_SET_FS, 0x2b2a58d826f0) = 0
mprotect(0x2b2a58d80000, 4096, PROT_READ) = 0
mprotect(0x2b2a58b73000, 16384, PROT_READ) = 0
mprotect(0x2b2a58826000, 53248, PROT_READ) = 0
mprotect(0x2b2a585c2000, 4096, PROT_READ) = 0
mprotect(0x60c000, 4096, PROT_READ)     = 0
mprotect(0x2b2a583b3000, 4096, PROT_READ) = 0
munmap(0x2b2a581b6000, 231911)          = 0
uname({sys="Linux", node="hector", ...}) = 0
brk(0)                                  = 0x611000
brk(0x632000)                           = 0x632000
open("/proc/stat", O_RDONLY)            = 3
fstat(3, {st_mode=S_IFREG|0444, st_size=0, ...}) = 0
mmap(NULL, 4096, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x2b2a581b6000
read(3, "cpu  2897209 30277 90314 1612883"..., 1024) = 810
read(3, "", 1024)                       = 0
close(3)                                = 0
munmap(0x2b2a581b6000, 4096)            = 0
open("/proc/sys/kernel/pid_max", O_RDONLY) = 3
read(3, "32768\n", 24)                  = 6
close(3)                                = 0
open("/etc/toprc", O_RDONLY)            = -1 ENOENT (No such file or directory)
open("/home/eje211/.toprc", O_RDONLY)   = -1 ENOENT (No such file or directory)
getuid()                                = 1000
stat("/proc/self", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
stat("/home/eje211/.terminfo", 0x7fff5290b500) = -1 ENOENT (No such file or directory)
stat("/etc/terminfo", {st_mode=S_IFDIR|0755, st_size=4096, ...}) = 0
access("/etc/terminfo/x/xterm", R_OK)   = 0
open("/etc/terminfo/x/xterm", O_RDONLY) = 3
read(3, "\32\0010\0&\0\17\0\235\1F\5xterm|xterm terminal"..., 4097) = 2522
close(3)                                = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=45, ws_col=111, ws_xpixel=0, ws_ypixel=0}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig icanon echo ...}) = 0
ioctl(0, SNDCTL_TMR_CONTINUE or TCSETSF, {B38400 opost isig -icanon -echo ...}) = 0
ioctl(0, SNDCTL_TMR_TIMEBASE or TCGETS, {B38400 opost isig -icanon -echo ...}) = 0
ioctl(1, TIOCGWINSZ, {ws_row=45, ws_col=111, ws_xpixel=0, ws_ypixel=0}) = 0
rt_sigaction(SIGALRM, {0x402c00, [ALRM], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGHUP, {0x402c00, [HUP], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGINT, {0x402c00, [INT], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGPIPE, {0x402c00, [PIPE], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGQUIT, {0x402c00, [QUIT], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTERM, {0x402c00, [TERM], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTSTP, {0x402ca0, [TSTP], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGTTIN, {0x402ca0, [TTIN], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGTTOU, {0x402ca0, [TTOU], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_IGN}, 8) = 0
rt_sigaction(SIGCONT, {0x404700, [CONT], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
rt_sigaction(SIGWINCH, {0x404700, [WINCH], SA_RESTORER|SA_RESTART, 0x2b2a58866f10}, {SIG_DFL}, 8) = 0
--- SIGSEGV (Segmentation fault) @ 0 (0) ---
+++ killed by SIGSEGV +++
Code:
box ~ # emerge --info
Portage 2.1.4_rc13 (default-linux/amd64/2007.0/desktop, gcc-3.4.6, glibc-2.7-r1, 2.6.23-gentoo-r2 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r2 x86_64 AMD Athlon(tm) 64 Processor 3000+
Timestamp of tree: Mon, 31 Dec 2007 15:00:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.3.6-r3, 2.4.4-r6, 2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
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
sys-devel/binutils:  2.15.92.0.2-r2, 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -pipe"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/qmail/alias /var/qmail/control /var/vpopmail/domains /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer parallel-fetch sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.club-internet.fr/pub/mirrors/gentoo/ ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.solnet.ch/mirror/Gentoo ftp://mirrors.blueyonder.co.uk/mirrors/gentoo http://mir.zyrianes.net/gentoo/ ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ "
LANG="en_GB.UTF-8"
LC_ALL="fr_FR.UTF-8"
LINGUAS="en fr en_GB"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/xeffects /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl acpi alsa amd64 apache2 bash-completioni berkdb bitmap-fonts bzlib cairo cdparanoia cdr cjk cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo fam firefox fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal iconv imap immqt-bc ipv6 isdnlog java jpeg kde kerberos ldap lirc live logitech-mouse mad midi mikmod mmx mono mp3 mpeg mudflap mysql ncurses nls nptl nptlonly nsplugin nvidia oc offensive ogg opengl openmp oss pam pcre pdf perl png pppd python qt3 qt3support qt4 quicktime readline reflection samba sdl session sockets spell spl sse sse2 ssl svg tcltk tcpd theora tidy tiff truetype truetype-fonts type1-fonts unicode usb vorbis xml xorg xprint xscreensaver xv zlib" ALSA_CARDS="via82xx" 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en fr en_GB" USERLAND="GNU" VIDEO_CARDS="nvidia vesa fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Code:
box ~ # emerge -pv procps gcc glibc

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] sys-process/procps-3.2.7  USE="(-n32)" 0 kB
[ebuild   R   ] sys-devel/gcc-4.2.2  USE="fortran gtk mudflap nls openmp (-altivec) -bootstrap -build -doc -gcj (-hardened) -ip28 -ip32r10k (-multilib) -multislot (-n32) (-n64) -nocxx -objc -objc++ -objc-gc -test -vanilla" 0 kB
[ebuild   R   ] sys-libs/glibc-2.7-r1  USE="nls -debug -gd -glibc-compat20 -glibc-omitfp (-hardened) (-multilib) -profile (-selinux) -vanilla" 92 kB

Total: 3 packages (3 reinstalls), Size of downloads: 92 kB

I remerged procps and revdep-emerged it. I rebooted. Nothing works: it segfaults. ps works, the KDE system monitor that provides info similar to top's works, uptime works. But top does not.

I googled this over and over and found nothing. Can anyone help?
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22148

PostPosted: Tue Jan 01, 2008 5:59 pm    Post subject: Reply with quote

Please use sys-devel/gdb to capture a stack backtrace at the time of the segmentation fault. You may need to read How to get meaningful backtraces in Gentoo before you can provide useful output.
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Fri Jan 04, 2008 5:16 am    Post subject: Reply with quote

I'm getting the same problem, also on x86_64 (amd64 3000+). I just started having the problem today when i upgraded from 2.6.16-r10 to 2.6.23-r5. Not sure what version top was at before i did my monstrous updates over the last two days (six months since i've done any updates at all). I do know for sure that top worked this morning before I did the kernel update, however, which was the last update I did other than xorg (which is running slower than it should, and is the only other problem i'm having after my updates).

I'll use the backtrace utility as well as post the results.

[edit]

So, I installed gdb and read the page you referenced, but I don't understand how to add the 'nostrip' compile option. I'm sure its something obvious, but this is the first time I've had to do something like this on the computer. The guide should at least tell people where to add the FEATURE 'nostrip'. :?
_________________
krenshala
:wq
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Fri Jan 04, 2008 9:06 am    Post subject: Reply with quote

I tried the gdb thing; I even recompiled procps so that it was built the right way and with no stripping. I'm absolutely sure that none of the output I got from gdb was meaningful at all and I felt a bit embarrassed about it.

That said, I too got the error after upgrading the kernel. I'm not sure when exactly, but I am fairly sure there was a kernel upgrade involved. As Velma would say, I think it may be a clue.
Back to top
View user's profile Send private message
OmSai
l33t
l33t


Joined: 30 Sep 2007
Posts: 605
Location: Manchester, CT, USA

PostPosted: Fri Jan 04, 2008 12:47 pm    Post subject: Reply with quote

eje211 wrote:
I'm absolutely sure that none of the output I got from gdb was meaningful
By that I'm guessing that there were ?? where there should have been line numbers for c- file names.


Make sure you do 2 things to setup gdb:
  1. Do an empty tree emerge of your package, so that ALL the dependent packages are rebuilt in nostrip
    Top is in coreutils ... I think :?
    Code:
    $ emerge -e coreutils -pv

    These are the packages that would be merged, in order:

    Calculating dependencies... done!
    [ebuild   R   ] sys-devel/gnuconfig-20070724  0 kB
    [ebuild   R   ] virtual/libintl-0  0 kB
    [ebuild   R   ] virtual/libiconv-0  0 kB
    [ebuild   R   ] dev-libs/expat-2.0.1  0 kB
    [ebuild   R   ] sys-devel/autoconf-wrapper-4-r3  0 kB
    [ebuild   R   ] sys-devel/automake-wrapper-3-r1  0 kB
    [ebuild   R   ] sys-devel/gettext-0.17  USE="nls -doc -emacs -nocxx" 0 kB
    [ebuild   R   ] sys-devel/m4-1.4.10  USE="nls -examples" 0 kB
    [ebuild   R   ] sys-apps/findutils-4.3.8-r1  USE="nls (-selinux) -static" 0 kB
    [ebuild   R   ] sys-devel/binutils-config-1.9-r4  0 kB
    [ebuild   R   ] sys-devel/binutils-2.18-r1  USE="nls -multislot -multitarget -test -vanilla" 0 kB
    [ebuild   R   ] sys-libs/db-4.5.20_p2  USE="-bootstrap -doc -java -nocxx -tcl -test" 0 kB
    [ebuild   R   ] sys-libs/gdbm-1.8.3-r3  USE="berkdb" 0 kB
    [ebuild   R   ] sys-devel/libperl-5.8.8-r1  USE="berkdb debug gdbm -ithreads" 0 kB
    [ebuild   R   ] dev-lang/perl-5.8.8-r4  USE="berkdb debug gdbm -build -doc -ithreads -perlsuid" 0 kB
    [ebuild   R   ] perl-core/Test-Harness-2.64  0 kB
    [ebuild   R   ] perl-core/PodParser-1.35  0 kB
    [ebuild   R   ] dev-perl/Locale-gettext-1.05  0 kB
    [ebuild   R   ] sys-apps/help2man-1.36.4  USE="nls" 0 kB
    [ebuild   R   ] sys-devel/autoconf-2.61-r1  USE="-emacs" 0 kB
    [ebuild   R   ] sys-libs/ncurses-5.6-r2  USE="debug gpm unicode -bootstrap -build -doc -minimal -nocxx -profile -trace" 0 kB
    [ebuild   R   ] sys-apps/texinfo-4.8-r5  USE="nls -build -static" 0 kB
    [ebuild   R   ] sys-libs/gpm-1.20.1-r6  USE="(-selinux)" 0 kB
    [ebuild   R   ] app-shells/bash-3.2_p17-r1  USE="nls -afs -bashlogger -plugins -vanilla" 0 kB
    [ebuild   R   ] sys-devel/automake-1.10  0 kB
    [ebuild   R   ] app-admin/perl-cleaner-1.04.3  0 kB
    [ebuild   R   ] sys-devel/libtool-1.5.24  USE="-vanilla" 0 kB
    [ebuild   R   ] sys-apps/attr-2.4.39  USE="nls" 0 kB
    [ebuild   R   ] sys-apps/acl-2.2.45  USE="nls (-nfs)" 0 kB
    [ebuild   R   ] sys-apps/coreutils-6.9-r1  USE="acl nls (-selinux) -static -xattr" 0 kB

    Total: 30 packages (30 reinstalls), Size of downloads: 0 kB

  2. Looking at the packages installed, make sure they have the "debug" USE flag selectively enabled for the dependent packages (ncurses, perl & libperl in this case)
    Code:
    nano -w /etc/portage/package.use
    <add these>
    sys-libs/ncurses debug
    dev-lang/perl debug
    sys-devel/libperl debug



Post whatever output you get from gdb top
_________________
Gentoo is the stick-shift of Linux.
You work it manually, it has somewhat better performance, but it's really for the fun of it.
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Fri Jan 04, 2008 1:00 pm    Post subject: Reply with quote

Quote:
1. Do an empty tree emerge of your package, so that ALL the dependent packages are rebuilt in nostrip

Um... No, I didn't remerge ALL the dependent packages... Wahoo... That's going to be a big, big rebuild...
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Fri Jan 04, 2008 2:38 pm    Post subject: Reply with quote

Just out of curiosity, I rebooted to my 2.6.16-r10 kernel (I always keep my last stable kernel ... just in case) and top worked just fine. Reboot again and use 2.6.23-r5 and top segfaults. So its a difference in the kernel since that is the only difference between boots.
_________________
krenshala
:wq
Back to top
View user's profile Send private message
OmSai
l33t
l33t


Joined: 30 Sep 2007
Posts: 605
Location: Manchester, CT, USA

PostPosted: Fri Jan 04, 2008 10:08 pm    Post subject: Reply with quote

top is part of sys-process/procps...
Code:

$ equery belongs top
[ Searching for file(s) top in *... ]
sys-process/procps-3.2.7 (/usr/bin/top)
So yeah only 3 packages to emerge on empty tree
Sorry about that :oops:
Code:
$ emerge -e procps -pv

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] sys-libs/ncurses-5.6-r2  USE="debug gpm unicode -bootstrap -build -doc -minimal -nocxx -profile -trace" 0 kB
[ebuild   R   ] sys-libs/gpm-1.20.1-r6  USE="(-selinux)" 0 kB
[ebuild   R   ] sys-process/procps-3.2.7  USE="(-n32)" 0 kB

Total: 3 packages (3 reinstalls), Size of downloads: 0 kB


eje211 wrote:
So, I installed gdb and read the page you referenced, but I don't understand how to add the 'nostrip' compile option. I'm sure its something obvious, but this is the first time I've had to do something like this on the computer. The guide should at least tell people where to add the FEATURE 'nostrip'. :?
You need to add in the line for portage in your /etc/make.conf -
/etc/male.conf:
FEATURES="nostrip"


krenshala wrote:
So its a difference in the kernel since that is the only difference between boots.
Then I think it would be helpful if you could compare the difference in your kernel parameters to see which options are being turned off in the new kernel.
You'll need to compare the difference between your 2 kernel .config files
http://www.ranks.nl/tools/difference.html
You can get the new file using
Code:
zcat /proc/config.gz > ~/config-new
Though I can't think of a way to get old kernel .config file :?
_________________
Gentoo is the stick-shift of Linux.
You work it manually, it has somewhat better performance, but it's really for the fun of it.
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Fri Jan 04, 2008 10:55 pm    Post subject: Reply with quote

The old config? It'll still be in /usr/src/linux-2.6.16-* . But it seems to be more an issue with the actual kernel, not with its configuration...
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Fri Jan 04, 2008 11:06 pm    Post subject: Reply with quote

Yeah, its a difference between the two kernels but looking at the conf difference drastically reduces the parts that need to be looked at, at least for someone that is familiar with the kernel (which, unfortunately, I'm not).

Sorry for not including the conf files. I'm feeling under the weather, which is impairing my troubleshooting (aka, I have the Dumb). Its about 30K for the diff output. If there is a particular section you'd like me to post directly to the forum just let me know. If you have suggestions on this I could configure better, I'll be happy to take those as well. ;)
_________________
krenshala
:wq
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Sat Jan 05, 2008 12:11 am    Post subject: Reply with quote

Code:
This GDB was configured as "x86_64-pc-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/top
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff6c9fd000

Program received signal SIGSEGV, Segmentation fault.
0xffffffffff70088e in ?? ()
(gdb) continue
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.

I recompiled the three packages like om said, but I'm pretty sure this still is not useful.
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sat Jan 05, 2008 12:35 am    Post subject: Reply with quote

For giggles I remerged procps with --emptytree and nostrip as well.

Code:
kitsune ~ # emerge -pv --emptytree procps

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] sys-libs/ncurses-5.6-r2  USE="gpm -bootstrap -build -debug -doc -minimal -nocxx -profile -trace -unicode" 0 kB
[ebuild   R   ] sys-libs/gpm-1.20.1-r6  USE="(-selinux)" 0 kB
[ebuild   R   ] sys-process/procps-3.2.7  USE="(-n32)" 0 kB


Code:
kitsune ~ # gdb top
GNU gdb 6.7.1
Copyright (C) 2007 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 "x86_64-pc-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/top
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fffb71fd000

Program received signal SIGSEGV, Segmentation fault.
0xffffffffff7008ae in ?? ()
(gdb) quit


Does anyone having the problem have a kernel version before 2.6.23-r2 they can test with? We know from posts here it affects at least r2 and r5 ...
_________________
krenshala
:wq
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sat Jan 05, 2008 12:42 am    Post subject: Reply with quote

BTW, has anyone submitted a bug report on this yet? I tried to search for one, but my google-fu is weak, so I didn't want to create a duplicate (the dev's have enough bugs to wade through without adding duplicates ;))
_________________
krenshala
:wq
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22148

PostPosted: Sat Jan 05, 2008 3:21 am    Post subject: Reply with quote

Of the people who rebuilt packages with nostrip, I have not seen anyone indicate that they added -ggdb to their CFLAGS, nor have I seen an emerge --info from any of those people. The one emerge --info which was posted preceded my post, and indicates that -ggdb was not in CFLAGS. Therefore, the compiler would have included little, if any, debug information. As mentioned in How to get meaningful backtraces in Gentoo, you should add -ggdb to your compiler flags, as well as add the nostrip option to FEATURES. It is useful, but not always necessary, to re-emerge dependent packages. The most important piece is to get debug symbols for the module which contains the faulting function. This is often, but not always, a module in the main package. If you do not build symbols for supporting packages, the backtrace will be less complete. However, for many crashes, having symbols for the failing package is sufficient. If it is not, you can always go back and rebuild with symbols later.

It is generally not necessary to add the debug USE flag to the package if you only want symbols. I recommend against turning on USE=debug without due caution. I did once, and ended up with app-misc/screen dumping unwanted debug logs in /tmp because that was part of its debugging support.

Please do not be shy about posting output from attempts to troubleshoot this. Small samples of output are rarely harmful. At worst, they are useless. Please let people who regularly deal with diagnostics determine what is and is not useful. On the other hand, do not post pages upon pages of output if you think it is useless. In that case, summarize it and someone will request it if it sounds useful.

Based on the comments about 2.6.16 working and 2.6.23 failing, I suspect that something has changed in the information that is supplied by the 2.6.23 kernel. This change then triggers a latent bug in top. If anyone reading this thread has a kernel from an intervening version, please check whether top from =sys-process/procps-3.2.7 dies for you.
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sat Jan 05, 2008 5:17 am    Post subject: Reply with quote

Here is my emerge info:
Code:
Portage 2.1.4_rc14 (default-linux/amd64/2006.0, gcc-3.4.6, glibc-2.7-r1, 2.6.23-gentoo-r5kitsune x86_64)
=================================================================
System uname: 2.6.23-gentoo-r5kitsune x86_64 AMD Athlon(tm) 64 Processor 3000+
Timestamp of tree: Sat, 05 Jan 2008 04:16:01 +0000
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.4.4-r4, 2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
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
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/udev/rules.d"
CXXFLAGS="-march=athlon64 -O2 -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig distlocks metadata-transfer nostrip sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://mirror.datapipe.net/gentoo ftp://mirror.iawnet.sandia.gov/pub/gentoo/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
SYNC="rsync://rsync.us.gentoo.org/gentoo-portage"
USE="X alsa amd64 apache2 berkdb bitmap-fonts cdr cli cracklib crypt dri eds emboss encode firefox foomaticdb fortran gd gif gpm gstreamer gtk2 iconv imlib ipv6 isdnlog jpeg lzw lzw-tiff midi mp3 mpeg mudflap mysql ncurses nls nptl nptlonly nvidia opengl openmp oss pam pcre perl php png pppd python qt3 qt4 quicktime readline reflection sdl session spell spl ssl tcpd threads tiff truetype-fonts type1-fonts usb xorg xpm xv zlib" ALSA_CARDS="intel8x0" 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="access auth auth_dbm auth_anon authz_host auth_digest alias file-cache echo charset-lite cache disk-cache mem-cache ext-filter case_filter case-filter-in deflate filter mime-magic cern-meta expires headers usertrack unique_id proxy proxy-connect proxy-ftp proxy-http info include cgi cgid dav dav-fs vhost-alias speling rewrite log_config logio env setenvif mime status autoindex asis negotiation dir imap actions userdir so" ELIBC="glibc" INPUT_DEVICES="keyboard mouse" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" USERLAND="GNU" VIDEO_CARDS="nvidia vesa fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS, PORTDIR_OVERLAY


This is how it was configured when I recompiled procpc then ran 'gdb top' (listed in my previous post). As you can plainly see, nostrip was in FEATURES and -ggdb is one of the included CFLAGS.

What else do you need?
_________________
krenshala
:wq
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sat Jan 05, 2008 5:36 am    Post subject: Reply with quote

I'm downloading 2.6.21-r4 and 2.6.22-r5 (both marked as stable for amd64 in the package repository) now. I'll configure and compile tomorrow and post whether top continues to segfault in them or not. If other people can post yea/nay on top working for them, and their kernel version it would be appreciated.

Hu, what kernel are you running? I assume from your post that you are not having any problems with top.

Is there a particular portion of my conf files you would like me to post here? I save .conf to /boot/conf-<kernel>-<mybuild> for just such "fun".
_________________
krenshala
:wq
Back to top
View user's profile Send private message
OmSai
l33t
l33t


Joined: 30 Sep 2007
Posts: 605
Location: Manchester, CT, USA

PostPosted: Sat Jan 05, 2008 8:23 am    Post subject: Reply with quote

Hu,
On kernel 2.6.23-gentoo-r3 I've got no problems with top
My /usr/src/linux/.config is uploaded here - http://omploader.org/vYTR1/.config
emerge --info:
Portage 2.1.3.19 (default-linux/amd64/2007.0, gcc-4.1.2, glibc-2.6.1-r0, 2.6.23-gentoo-r3 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r3 x86_64 AMD Athlon(tm) 64 Processor 3800+
Timestamp of tree: Wed, 02 Jan 2008 15:16:01 +0000
ccache version 2.4 [enabled]
app-shells/bash:     3.2_p17-r1
dev-java/java-config: 1.3.7, 2.0.33-r1
dev-lang/python:     2.4.4-r6, 2.5.1-r3
dev-python/pycrypto: 2.0.1-r6
dev-util/ccache:     2.4-r7
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
sys-devel/automake:  1.5, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.22-r2
ACCEPT_KEYWORDS="amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=athlon64 -O2 -pipe -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/rc.d /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d /usr/share/X11"
CXXFLAGS="-march=athlon64 -O2 -pipe -ggdb"
DISTDIR="/usr/portage/distfiles"
FEATURES="ccache distlocks metadata-transfer nostrip sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://gentoo.cites.uiuc.edu/pub/gentoo/ "
LINGUAS="hi"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow 3dnowext X a52 aac acl acpi alsa amd amd64 avi berkdb bitmap-fonts cdr cli cracklib crypt cups dbus debug divx divx4linux dri dts dvd dvdnav dvdread encode fame firefox flac fortran gdbm gif gmedia gpm gtk hal iconv ipv6 isdnlog jpeg live lm_sensors logitech-mouse mad matroska mesa midi mjpeg mmx mp3 mpeg mplayer mudflap ncurses nls nptl nptlonly nsplugin ogg oggvorbis opengl openmp oss pam pcre pdf png pppd python qt3 qt4 quicktime readline realmedia reflection samba sdl session spell spl sse sse2 ssl startup-notification subtitles svg swat symlink tcpd tetex theora tiff truetype truetype-fonts type1 type1-fonts unicode vorbis wma wmp xanim xcomposite xorg xscreensaver xv xvid zlib" ALSA_CARDS="hda-intel" 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 authn_alias authn_anon 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 deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="hi" USERLAND="GNU" VIDEO_CARDS="nvidia"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS

_________________
Gentoo is the stick-shift of Linux.
You work it manually, it has somewhat better performance, but it's really for the fun of it.
Back to top
View user's profile Send private message
OmSai
l33t
l33t


Joined: 30 Sep 2007
Posts: 605
Location: Manchester, CT, USA

PostPosted: Sat Jan 05, 2008 9:20 am    Post subject: Reply with quote

krenshala wrote:
BTW, has anyone submitted a bug report on this yet? I tried to search for one, but my google-fu is weak, so I didn't want to create a duplicate (the dev's have enough bugs to wade through without adding duplicates ;))
It has already been filed as a bug... but it's status is NEEDINFO
bug 158598

I suggest you guys add in your mix.
But do one thing, eje211
After
Code:
gdb top
(gdb) run

Don't use the command `continue`, but instead
Code:
(gdb) bt
for a backtrace


krenshala, I compared your kernel configuration to mine.
Since the program `top` specifically deals with cpu usage observation, I think the CPU configuration of the kernel needs to be carefully inspected.
Here are the significant differences between your 2.6.23-gentoo-r5 config (left) and my 2.6.23-gentoo-r3 (right)
# Processor type and features:
CONFIG_LOCALVERSION="kitsune"                        | CONFIG_LOCALVERSION=""
# CONFIG_SYSFS_DEPRECATED is not set                 | CONFIG_SYSFS_DEPRECATED=y
CONFIG_X86_INTERNODE_CACHE_BYTES=64                  | CONFIG_X86_INTERNODE_CACHE_BYTES=128
# CONFIG_SCHED_SMT is not set                        | CONFIG_SCHED_SMT=y
# CONFIG_K8_NUMA is not set                          | CONFIG_K8_NUMA=y
# CONFIG_NUMA_EMU is not set                         | CONFIG_NUMA_EMU=y
CONFIG_HZ_300=y                                      | # CONFIG_HZ_300 is not set
CONFIG_HZ=300                                        | CONFIG_HZ_1000=y

_________________
Gentoo is the stick-shift of Linux.
You work it manually, it has somewhat better performance, but it's really for the fun of it.
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sat Jan 05, 2008 4:46 pm    Post subject: Reply with quote

om wrote:
krenshala wrote:
BTW, has anyone submitted a bug report on this yet? I tried to search for one, but my google-fu is weak, so I didn't want to create a duplicate (the dev's have enough bugs to wade through without adding duplicates ;))
It has already been filed as a bug... but it's status is NEEDINFO
bug 158598


I added notes for my specific instance of the bug and a link to this thread.

om wrote:
I suggest you guys add in your mix.
But do one thing, eje211
After
Code:
gdb top
(gdb) run

Don't use the command `continue`, but instead
Code:
(gdb) bt
for a backtrace


Code:
kitsune ~ # gdb
GNU gdb 6.7.1
Copyright (C) 2007 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 "x86_64-pc-linux-gnu".
(gdb) file /usr/bin/top
Reading symbols from /usr/bin/top...done.
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/top
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff7fdfd000

Program received signal SIGSEGV, Segmentation fault.
0xffffffffff7008ae in ?? ()
(gdb) bt
#0  0xffffffffff7008ae in ?? ()
#1  0x00007fff7fdfd812 in ?? ()
#2  0x00007fff7fc97f20 in ?? ()
#3  0x0000000000000049 in ?? ()
#4  0x0000000000000000 in ?? ()
(gdb) quit
The program is running.  Exit anyway? (y or n) y
kitsune ~ #


Doesn't seem to make a difference. :evil:

om wrote:
krenshala, I compared your kernel configuration to mine.
Since the program `top` specifically deals with cpu usage observation, I think the CPU configuration of the kernel needs to be carefully inspected.
Here are the significant differences between your 2.6.23-gentoo-r5 config (left) and my 2.6.23-gentoo-r3 (right)
# Processor type and features:
CONFIG_LOCALVERSION="kitsune"                        | CONFIG_LOCALVERSION=""
# CONFIG_SYSFS_DEPRECATED is not set                 | CONFIG_SYSFS_DEPRECATED=y
CONFIG_X86_INTERNODE_CACHE_BYTES=64                  | CONFIG_X86_INTERNODE_CACHE_BYTES=128
# CONFIG_SCHED_SMT is not set                        | CONFIG_SCHED_SMT=y
# CONFIG_K8_NUMA is not set                          | CONFIG_K8_NUMA=y
# CONFIG_NUMA_EMU is not set                         | CONFIG_NUMA_EMU=y
CONFIG_HZ_300=y                                      | # CONFIG_HZ_300 is not set
CONFIG_HZ=300                                        | CONFIG_HZ_1000=y


Hmmm ...

I've moved the files I linked above to their own directory to make it easier for people to look at. here it is. Shall I try enabling the SMP settings?
_________________
krenshala
:wq
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Sat Jan 05, 2008 5:53 pm    Post subject: Reply with quote

I use -ggdb and nostrip.

Code:
$ gdb /usr/bin/top
GNU gdb 6.7.1
Copyright (C) 2007 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 "x86_64-pc-linux-gnu"...
Using host libthread_db library "/lib/libthread_db.so.1".
(gdb) run
Starting program: /usr/bin/top
warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7fff8a9fd000

Program received signal SIGSEGV, Segmentation fault.
0xffffffffff70088e in ?? ()
(gdb) bt
#0  0xffffffffff70088e in ?? ()
#1  0x00007fff8a9fd7f2 in ?? ()
#2  0x00007fff8a8d1fc0 in ?? ()
#3  0x0000000000000049 in ?? ()
#4  0x0000000000000000 in ?? ()
(gdb) continue
Continuing.

Program terminated with signal SIGSEGV, Segmentation fault.
The program no longer exists.
(gdb) q
I still don't think it's meaningful, alas.
Code:
$ emerge --info
Portage 2.1.4_rc14 (default-linux/amd64/2007.0/desktop, gcc-3.4.6, glibc-2.7-r1, 2.6.23-gentoo-r2 x86_64)
=================================================================
System uname: 2.6.23-gentoo-r2 x86_64 AMD Athlon(tm) 64 Processor 3000+
Timestamp of tree: Fri, 04 Jan 2008 07:30:01 +0000
distcc 2.18.3 x86_64-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
app-shells/bash:     3.2_p33
dev-java/java-config: 1.3.7, 2.1.3
dev-lang/python:     2.3.6-r3, 2.4.4-r6, 2.5.1-r4
dev-python/pycrypto: 2.0.1-r6
sys-apps/baselayout: 1.12.10-r5
sys-apps/sandbox:    1.2.18.1-r2
sys-devel/autoconf:  2.13, 2.61-r1
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
sys-devel/binutils:  2.15.92.0.2-r2, 2.18-r1
sys-devel/gcc-config: 1.4.0-r4
sys-devel/libtool:   1.5.24
virtual/os-headers:  2.6.23-r3
ACCEPT_KEYWORDS="amd64 ~amd64"
CBUILD="x86_64-pc-linux-gnu"
CFLAGS="-march=k8 -O2 -ggdb"
CHOST="x86_64-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/kde/3.4/env /usr/kde/3.4/share/config /usr/kde/3.4/shutdown /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/config /var/qmail/alias /var/qmail/control /var/vpopmail/domains /var/vpopmail/etc"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/fonts/fonts.conf /etc/gconf /etc/php/apache2-php5/ext-active/ /etc/php/cgi-php5/ext-active/ /etc/php/cli-php5/ext-active/ /etc/revdep-rebuild /etc/terminfo /etc/texmf/web2c /etc/udev/rules.d"
CXXFLAGS="-march=k8 -O2 -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="distlocks metadata-transfer nostrip sandbox sfperms strict unmerge-orphans userfetch"
GENTOO_MIRRORS="http://ftp.club-internet.fr/pub/mirrors/gentoo/ ftp://pandemonium.tiscali.de/pub/gentoo/ ftp://ftp.snt.utwente.nl/pub/os/linux/gentoo ftp://ftp.solnet.ch/mirror/Gentoo ftp://mirrors.blueyonder.co.uk/mirrors/gentoo http://mir.zyrianes.net/gentoo/ ftp://ftp.belnet.be/mirror/rsync.gentoo.org/gentoo/ "
LANG="en_GB.UTF-8"
LC_ALL="en_GB.UTF-8"
LINGUAS="en fr en_GB"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages --filter=H_**/files/digest-*"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/portage/local/layman/xeffects /usr/local/portage"
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="X acl acpi alsa amd64 apache2 bash-completioni berkdb bitmap-fonts bzlib cairo cdparanoia cdr cjk cli cracklib crypt cups dbus dri dvd dvdr dvdread eds emboss encode esd evo fam firefox fortran gdbm gif gnome gpm gstreamer gtk gtk2 hal iconv imap immqt-bc ipv6 isdnlog java jpeg kde kerberos ldap lirc live logitech-mouse mad midi mikmod mmx mono mp3 mpeg mudflap mysql ncurses nls nptl nptlonly nsplugin nvidia oc offensive ogg opengl openmp oss pam pcre pdf perl png pppd python qt3 qt3support qt4 quicktime readline reflection samba sdl session sockets spell spl sse sse2 ssl svg tcltk tcpd theora tidy tiff truetype truetype-fonts type1-fonts unicode usb vorbis xml xorg xprint xscreensaver xv zlib" ALSA_CARDS="via82xx" 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" ELIBC="glibc" INPUT_DEVICES="keyboard mouse joystick" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en fr en_GB" USERLAND="GNU" VIDEO_CARDS="nvidia vesa fbdev"
Unset:  CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, MAKEOPTS, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22148

PostPosted: Sat Jan 05, 2008 7:06 pm    Post subject: Reply with quote

krenshala wrote:

This is how it was configured when I recompiled procpc then ran 'gdb top' (listed in my previous post). As you can plainly see, nostrip was in FEATURES and -ggdb is one of the included CFLAGS.


Yes, I see it. I apologize if you thought I was complaining at you. When I made my second post, the thread seemed to be a bit out of control with different users posting "me too" but no real progress was being made. I attempted to direct the various participants toward solving the problem. In my opinion, the responses since then have made good progress toward isolating the problem.

Yes, top works for me, but I do not use an amd64 profile. Everyone reporting problems is on amd64. It may be instructive to use dev-util/strace to trace a working top and a crashing top to see whether there is any obvious difference in their behavior. This could be time consuming, since the process makeup of the two systems will vary, and thus disturb the output.

Since om has it working with =sys-kernel/gentoo-sources-2.6.23-gentoo-r3, I suggest that we try to determine whether the problem is related to configuration or to the kernel patches that were applied in -r4 and -r5. krenshala: please check whether top crashes for you when you use =sys-kernel/gentoo-sources-2.6.23-gentoo-r3. om: please check whether top crashes for you when you use =sys-kernel/gentoo-sources-2.6.23-gentoo-r5. For both of you, please test if -r4 works or fails. Based on the results, we can isolate whether it is related to kernel configuration options or kernel patches. If it is a kernel configuration problem, we can perform a binary search in the configuration differences to find which option affects top. eje211, if you have the time to try other kernel versions, please try other kernels in the 2.6.23-gentoo-r* series and report which ones work for you. At the moment, we have too many unconnected data points to derive a probable cause.

eje211: that is very odd. Symbol information should be available. May I ask why you are using gcc 3.4.6? I doubt it is the cause of the current problems, but it looks odd to see an older compiler in an otherwise cutting edge system.

For everyone who is getting bad backtraces: what is the output of file /usr/bin/top ; objdump -h /usr/bin/top?
Back to top
View user's profile Send private message
eje211
Tux's lil' helper
Tux's lil' helper


Joined: 09 Sep 2004
Posts: 128
Location: London, UK

PostPosted: Sat Jan 05, 2008 7:31 pm    Post subject: Reply with quote

To Hu: I posted a strace in my first post. I didn't see anything useful in it.

For gcc, I just compile what is available in the updates. When a program I don't use directly doesn't compile, I mask that specific version and move on. (I think most of qt-4.3.* was masked that way.) But then,
Code:
# emerge -pv gcc

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R   ] sys-devel/gcc-4.2.2  USE="fortran gtk mudflap nls openmp (-altivec) -bootstrap -build -doc -gcj (-hardened) -ip28 -ip32r10k (-multilib) -multislot (-n32) (-n64) -nocxx -objc -objc++ -objc-gc -test -vanilla" 0 kB

Total: 1 package (1 reinstall), Size of downloads: 0 kB

So the wrong one must be SELECTED. I'll look into that. I have to go now, so I'll try it in a few hours.

Thanks for pointing that out, though.
Back to top
View user's profile Send private message
Hu
Administrator
Administrator


Joined: 06 Mar 2007
Posts: 22148

PostPosted: Sat Jan 05, 2008 10:00 pm    Post subject: Reply with quote

Right, but no one has posted a strace of a working top. I am hoping to compare the two to see if the faulting top receives some obviously bad input, and it will be easier to spot bad input if I have a known good sample from a very similar setup. Since I am not on an amd64 profile, I do not think any strace I could create locally would be a good example for the "known good" side of the comparison.
Back to top
View user's profile Send private message
krenshala
Tux's lil' helper
Tux's lil' helper


Joined: 28 Jan 2006
Posts: 85
Location: Austin TX, NorAm, Sol III

PostPosted: Sun Jan 06, 2008 8:16 pm    Post subject: Reply with quote

OK, I compiled 2.6.21-r4 and 2.6.22-r5 ... top does not segfault in 2.6.22-r5. I didn't bother booting to 2.6.21 because of this. I've added my config for 2.6.22-r5 to koboldi.net/segfault in case it will help.
_________________
krenshala
:wq
Back to top
View user's profile Send private message
OmSai
l33t
l33t


Joined: 30 Sep 2007
Posts: 605
Location: Manchester, CT, USA

PostPosted: Mon Jan 07, 2008 3:19 am    Post subject: Reply with quote

Hu wrote:
Yes, top works for me, but I do not use an amd64 profile. Everyone reporting problems is on amd64. It may be instructive to use dev-util/strace to trace a working top and a crashing top to see whether there is any obvious difference in their behavior. This could be time consuming, since the process makeup of the two systems will vary, and thus disturb the output.

Since om has it working with =sys-kernel/gentoo-sources-2.6.23-gentoo-r3, I suggest that we try to determine whether the problem is related to configuration or to the kernel patches that were applied in -r4 and -r5.
krenshala: please check whether top crashes for you when you use =sys-kernel/gentoo-sources-2.6.23-gentoo-r3.
om: please check whether top crashes for you when you use =sys-kernel/gentoo-sources-2.6.23-gentoo-r5.
For both of you, please test if -r4 works or fails.

Based on the results, we can isolate whether it is related to kernel configuration options or kernel patches.
If it is a kernel configuration problem, we can perform a binary search in the configuration differences to find which option affects top.
eje211, if you have the time to try other kernel versions, please try other kernels in the 2.6.23-gentoo-r* series and report which ones work for you.

At the moment, we have too many unconnected data points to derive a probable cause.
I've used gentoo-sources kernels -r4 and -r5 on amd64, all with the same .config file from -r3
Both work fine with top

I ran strace for all 3 kernels using
Code:
strace -o ~/top.2.6.23-gentoo-rx.strace top
Where x is the kernel version.

Here are the links to my top strace files:
top.2.6.23-gentoo-r3.strace
top.2.6.23-gentoo-r4.strace
top.2.6.23-gentoo-r5.strace

And again, here is my kernel .config
My emerge --info is unchanged, as posted above

Thank you, hu, for co-ordinating this effort
_________________
Gentoo is the stick-shift of Linux.
You work it manually, it has somewhat better performance, but it's really for the fun of it.
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Goto page 1, 2, 3  Next
Page 1 of 3

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum