Hallo Leute,
ich antworte mir mal selbst, das Problem ist nämlich noch nicht gelöst.
Am Sonntag, 2. November 2003 23:42 schrieb Christian Boltz:
Am Sonntag, 2. November 2003 00:13 schrieb David Haller:
Am Sat, 01 Nov 2003, Christian Boltz schrieb:
ich habe hier seit kurzem SuSE 9.0 Pro installiert (als Update
[1]) und das Problem, dass sich einige Programme mit segfault
"verabschieden". Bisher habe ich das Problem bei den Programmen
sleep, hwclock, ps, awk [...] festgestellt.
Der Fehler scheint irgendwie mit dem Kernel zusammenzuhängen, da
mit meinem "alten" 2.4.16-vanilla [...] o. g. Programme laufen.
Der SuSE-Kernel, der die Probleme macht, ist k_deflt-2.4.21-99.
Der Meinung bin ich übrigens immer noch ;-)
Hm. Die strace sind wenig aufschlussreich, zumindest sehe ich da
kein Muster... Teste mal, mit 'export LANG=C' (damit es schon mal
nicht an den Locales liegen kann...
Und dann verwende 'ltrace -f -s 64 -S -o <logdatei>' zum tracen.
Hier die je letzten 30 Zeilen der ltrace-Ausgabe bei sleep und ps
(Parameter wie von Dir gewünscht, LANG=C, SuSE-Kernel 2.4.21-99)
==> ps_ltrace_LANG_C <==
1769 strcasecmp("unknown", "unix95") = 2
1769 strcasecmp("unknown", "unknown") = 0
1769 <... bsearch resumed> ) = 0x08057f88
1769 getenv("UNIX95") = NULL
1769 getenv("POSIXLY_CORRECT") = NULL
1769 getenv("POSIX2") = NULL
1769 geteuid(
1769 SYS_geteuid32(-1, 0x08057c1f, 0, 0xbffff3f0, 0xbffff4d4) = 0
1769 <... geteuid resumed> ) = 0
1769 getpagesize(0x080c1cc0, 0xbffff3f0, 0xbffff488, 0x0804a07f, 1) = 4096
1769 open("/proc/uptime", 0, 053
1769 SYS_open("/proc/uptime", 0, 053) = 3
1769 <... open resumed> ) = 3
1769 lseek(3, 0, 0, 0x08048b5d, 0x40038c9c
1769 SYS_lseek(3, 0, 0, 0x080c4240, 0xbffff4d4) = 0
1769 <... lseek resumed> ) = 0
1769 read(3,
1769 SYS_read(3, "247.83 207.05\n", 1023) = 14
1769 <... read resumed> "247.83 207.05\n", 1023) = 14
1769 setlocale(1, NULL) = "C"
1769 setlocale(1, "C") = "C"
1769 sscanf(0x080c4240, 0x0805dc82, 0xbffff3a8, 0xbffff3b0, 0x40038c9c
1769 --- SIGSEGV (Segmentation fault) ---
1769 fprintf(0x40160ee0, "\n\nSignal %d (%s) caught by ps (%s).\nPlease send bug reports t"..., 11, "SEGV", "procps version 3.1.11"
1769 SYS_write(2, "\n\nSignal 11 (SEGV) caught by ps (procps version 3.1.11).\nPlease "..., 133) = 133
1769 <... fprintf resumed> ) = 133
1769 _exit(139
1769 SYS_252(139, 0, 133, 0xbfffed30, 0x4008be4b) = -38
1769 SYS_exit(139
1769 +++ exited (status 139) +++
==> sleep_ltrace_LANG_C <==
1764 SYS_rt_sigaction(32, 0xbffff01c, 0, 8, 0x40199fd8) = 0
1764 SYS_rt_sigaction(33, 0xbffff01c, 0, 8, 0x40199fd8) = 0
1764 SYS_rt_sigaction(34, 0xbffff01c, 0, 8, 0x40199fd8) = 0
1764 SYS_rt_sigprocmask(0, 0xbffff2fc, 0, 8, 0x401ab68c) = 0
1764 SYS_rt_sigprocmask(1, 0xbffff2fc, 0, 8, 0x401ab68c) = 0
1764 SYS__sysctl(0xbffff08c, 0x401ab68c, 0x40096080, 0xbffff0fc, 0xbffff0b4) = 0
1764 __libc_start_main(0x08048cf0, 2, 0xbffff4c4, 0x0804a250, 0x0804a2b0
1764 setlocale(6, ""
1764 SYS_open("/usr/lib/locale/locale-archive", 32768, 00) = -2
1764 SYS_open("/usr/share/locale/locale.alias", 0, 0666) = 3
1764 SYS_fstat64(3, 0xbfffeeb0, 0x40199fd8, 0x0804c520, 8192) = 0
1764 SYS_mmap2(0, 4096, 3, 34, -1) = 0x4001a000
1764 SYS_read(3, "# Locale name alias data base.\n# Copyright (C) 1996,1997,1998,19"..., 4096) = 2601
1764 SYS_read(3, "", 4096) = 0
1764 SYS_close(3) = 0
1764 SYS_munmap(0x4001a000, 4096) = 0
1764 SYS_open("/usr/lib/locale/de_DE@euro/LC_CTYPE", 0, 027777771070) = 3
1764 SYS_fstat64(3, 0xbffff220, 0x40199fd8, 0, 0x4019c900) = 0
1764 SYS_mmap2(0, 207996, 1, 2, 3) = 0x401ef000
1764 SYS_close(3) = 0
1764 <... setlocale resumed> ) = "LC_CTYPE=de_DE@euro;LC_NUMERIC=C;LC_TIME=C;LC_COLLATE=C;LC_MONET"...
1764 bindtextdomain("coreutils", "/usr/share/locale") = "/usr/share/locale"
1764 textdomain("coreutils") = "coreutils"
1764 __cxa_atexit(0x08049060, 0, 0, 0x40199fd8, 0xbffff4c4) = 0
1764 getopt_long(2, 0xbffff4c4, "+", 0x0804a680, NULL) = -1
1764 getopt_long(2, 0xbffff4c4, "", 0x0804a3a8, NULL) = -1
1764 __errno_location() = 0x4019a360
1764 __strtod_internal(0xbffff65f, 0xbffff404, 0, 0x401311f1, 2
1764 --- SIGSEGV (Segmentation fault) ---
1764 +++ killed by SIGSEGV +++
Wenn ich mit meinem 2.4.16-vanilla boote, läuft alles problemlos
Und kannst du mal nen Kernel kompilieren?
Hab ich gestern getestet (ebenfalls mit dem 2.4.16) - mehrere
Durchläufe gingen problemlos, auch die Ausgabe von make war exakt
gleich.
Heute Abend hab ich übrigens die Kompilierung der kdelibs (CVS) laufen,
läuft problemlos. (Ich brauch wohl nicht zu erwähnen, dass ich wieder
meinen 2.4.16 in Betrieb habe?
oder memtest laufen lassen?
ca. 6 1/2 Stunden, ohne Befund
[...]
Gruß
Christian Boltz
PS@Thomas: Dein Link zu sig11-Ursachen ist eine interessante Lektüre,
allerdings hab ich auf Anhieb nix "passendes" gefunden ;-)
--
"Lege die eine Hand in die Gefriertruhe und die andere auf eine
heiße Herdplatte. Im Durchschnitt ist das dann ein angenehmes
Gefühl." [so erklärt mein Lehrer den "Durchschnitt"]