[Bug 782496] Re: boinc crashes with "*** buffer overflow detected ***" on startup

Swen Kühnlein 782496 at bugs.launchpad.net
Sat May 14 12:34:01 UTC 2011


Hi,

boinc always crashes when it starts; I can provide my /var/lib/boinc-
client dir if this is needed to reproduce.

I've installed boinc-dbg now and ran boinc in gdb. Looking at the stack
backtrace the problem seems to be related to long paths inside the .wine
directory (didn't even know boinc uses wine):

(gdb) bt
#0  0x00007ffff6465d05 in raise (sig=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#1  0x00007ffff6469ab6 in abort () at abort.c:92
#2  0x00007ffff649ed7b in __libc_message (do_abort=2, fmt=0x7ffff6585b23 "*** %s ***: %s terminated\n") at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#3  0x00007ffff65301d7 in __fortify_fail (msg=0x7ffff6585aba "buffer overflow detected") at fortify_fail.c:32
#4  0x00007ffff652f0f0 in __chk_fail () at chk_fail.c:29
#5  0x00007ffff652e569 in _IO_str_chk_overflow (fp=0x6f7a, c=28538) at vsprintf_chk.c:35
#6  0x00007ffff64a6b98 in _IO_default_xsputn (f=0x7fffffff9d50, data=<value optimized out>, n=8) at genops.c:485
#7  0x00007ffff647931d in _IO_vfprintf_internal (s=<value optimized out>, format=<value optimized out>, ap=<value optimized out>) at vfprintf.c:1620
#8  0x00007ffff652e604 in ___vsprintf_chk (
    s=0x7fffffff9f60 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., flags=1, slen=256, format=0x472171 "%s/%s", args=0x7fffffff9e70) at vsprintf_chk.c:86
#9  0x00007ffff652e54a in ___sprintf_chk (s=<value optimized out>, flags=<value optimized out>, slen=<value optimized out>, format=<value optimized out>)
    at sprintf_chk.c:33
#10 0x0000000000462503 in sprintf (
    dirpath=0x7fffffffa1b0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffa1a8, recurse=true) at /usr/include/bits/stdio2.h:35
#11 dir_size (
    dirpath=0x7fffffffa1b0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffa1a8, recurse=true) at filesys.cpp:385
#12 0x000000000046252a in dir_size (
    dirpath=0x7fffffffa400 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffa3f8, recurse=true) at filesys.cpp:389
#13 0x000000000046252a in dir_size (
    dirpath=0x7fffffffa650 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffa648, recurse=true) at filesys.cpp:389
#14 0x000000000046252a in dir_size (
    dirpath=0x7fffffffa8a0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffa898, recurse=true) at filesys.cpp:389
#15 0x000000000046252a in dir_size (
    dirpath=0x7fffffffaaf0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffaae8, recurse=true) at filesys.cpp:389
#16 0x000000000046252a in dir_size (
    dirpath=0x7fffffffad40 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsyst"..., size=@0x7fffffffad38, recurse=true) at filesys.cpp:389
#17 0x000000000046252a in dir_size (
    dirpath=0x7fffffffaf90 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy", size=@0x7fffffffaf88, recurse=true) at filesys.cpp:389
#18 0x000000000046252a in dir_size (
    dirpath=0x7fffffffb1e0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices", size=@0x7fffffffb1d8, recurse=true) at filesys.cpp:389
#19 0x000000000046252a in dir_size (
    dirpath=0x7fffffffb430 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem", size=@0x7fffffffb428, recurse=true) at filesys.cpp:389
#20 0x000000000046252a in dir_size (
    dirpath=0x7fffffffb680 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy", size=@0x7fffffffb678, recurse=true) at filesys.cpp:389
#21 0x000000000046252a in dir_size (
    dirpath=0x7fffffffb8d0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices", size=@0x7fffffffb8c8, recurse=true) at filesys.cpp:389
#22 0x000000000046252a in dir_size (
    dirpath=0x7fffffffbb20 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem", size=@0x7fffffffbb18, recurse=true) at filesys.cpp:389
#23 0x000000000046252a in dir_size (
    dirpath=0x7fffffffbd70 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy", size=@0x7fffffffbd68, recurse=true) at filesys.cpp:389
---Type <return> to continue, or q <return> to quit---
#24 0x000000000046252a in dir_size (
    dirpath=0x7fffffffbfc0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices", size=@0x7fffffffbfb8, recurse=true) at filesys.cpp:389
#25 0x000000000046252a in dir_size (
    dirpath=0x7fffffffc210 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy/subsystem", 
    size=@0x7fffffffc208, recurse=true) at filesys.cpp:389
#26 0x000000000046252a in dir_size (
    dirpath=0x7fffffffc460 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices/reg-dummy", 
    size=@0x7fffffffc458, recurse=true) at filesys.cpp:389
#27 0x000000000046252a in dir_size (
    dirpath=0x7fffffffc6b0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem/devices", size=@0x7fffffffc6a8, 
    recurse=true) at filesys.cpp:389
#28 0x000000000046252a in dir_size (dirpath=0x7fffffffc900 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy/subsystem", 
    size=@0x7fffffffc8f8, recurse=true) at filesys.cpp:389
#29 0x000000000046252a in dir_size (dirpath=0x7fffffffcb50 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices/reg-dummy", 
    size=@0x7fffffffcb48, recurse=true) at filesys.cpp:389
#30 0x000000000046252a in dir_size (dirpath=0x7fffffffcda0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem/devices", size=@0x7fffffffcd98, 
    recurse=true) at filesys.cpp:389
#31 0x000000000046252a in dir_size (dirpath=0x7fffffffcff0 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy/subsystem", size=@0x7fffffffcfe8, 
    recurse=true) at filesys.cpp:389
#32 0x000000000046252a in dir_size (dirpath=0x7fffffffd240 "./.wine/dosdevices/z:/sys/devices/platform/reg-dummy", size=@0x7fffffffd238, recurse=true)
    at filesys.cpp:389
#33 0x000000000046252a in dir_size (dirpath=0x7fffffffd490 "./.wine/dosdevices/z:/sys/devices/platform", size=@0x7fffffffd488, recurse=true)
    at filesys.cpp:389
#34 0x000000000046252a in dir_size (dirpath=0x7fffffffd6e0 "./.wine/dosdevices/z:/sys/devices", size=@0x7fffffffd6d8, recurse=true) at filesys.cpp:389
#35 0x000000000046252a in dir_size (dirpath=0x7fffffffd930 "./.wine/dosdevices/z:/sys", size=@0x7fffffffd928, recurse=true) at filesys.cpp:389
#36 0x000000000046252a in dir_size (dirpath=0x7fffffffdb80 "./.wine/dosdevices/z:", size=@0x7fffffffdb78, recurse=true) at filesys.cpp:389
#37 0x000000000046252a in dir_size (dirpath=0x7fffffffddd0 "./.wine/dosdevices", size=@0x7fffffffddc8, recurse=true) at filesys.cpp:389
#38 0x000000000046252a in dir_size (dirpath=0x7fffffffe020 "./.wine", size=@0x7fffffffe018, recurse=true) at filesys.cpp:389
#39 0x000000000046252a in dir_size (dirpath=0x47e1de ".", size=@0x7fffffffe2b8, recurse=true) at filesys.cpp:389
#40 0x0000000000432722 in CLIENT_STATE::read_global_prefs (this=0x696a40) at cs_prefs.cpp:454
#41 0x00000000004172c8 in CLIENT_STATE::init (this=0x696a40) at client_state.cpp:424
#42 0x0000000000448da2 in boinc_main_loop () at main.cpp:393
#43 0x00007ffff6450eff in __libc_start_main (main=0x448ff0 <main(int, char**)>, argc=3, ubp_av=0x7fffffffe5b8, init=<value optimized out>, 
    fini=<value optimized out>, rtld_fini=<value optimized out>, stack_end=0x7fffffffe5a8) at libc-start.c:226
#44 0x0000000000405729 in _start ()

Since z: symlinks to / it is in fact a "symlink loop" inside
/sys/bus/platform/devices/reg-dummy:

swen at cassiopeia:/var/lib/boinc-client/.wine/dosdevices/z:/sys/bus/platform/devices/reg-dummy$ ls -l
insgesamt 0
-r--r--r-- 1 root root 4096 2011-05-14 13:52 modalias
drwxr-xr-x 2 root root    0 2011-05-14 14:23 power
lrwxrwxrwx 1 root root    0 2011-05-14 13:52 subsystem -> ../../../bus/platform
-rw-r--r-- 1 root root 4096 2011-05-14 13:52 uevent

-- 
You received this bug notification because you are a member of Debian
BOINC Maintainers, which is subscribed to boinc in Ubuntu.
https://bugs.launchpad.net/bugs/782496

Title:
  boinc crashes with "*** buffer overflow detected ***" on startup



More information about the pkg-boinc-devel mailing list