rtorrents crashes with "ChunkList::clear() called but a valid node was found." when a download is finished or when you try to remove a torrent file with [ctrl]+d,[ctrl]+d. This happens with: net-p2p/rtorrent-0.6.2 - net-libs/libtorrent-0.10.2 (Isn't in portage anymore) net-p2p/rtorrent-0.6.3 - net-libs/libtorrent-0.10.3 Last working version: net-p2p/rtorrent-0.6.1 - net-libs/libtorrent-0.10.1 emerge --info: Portage 2.1.2_pre2-r3 (default-linux/x86/2006.1, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo i686) ================================================================= System uname: 2.6.18-gentoo i686 AMD Sempron(tm) 2600+ Gentoo Base System version 1.13.0_alpha1 Last Sync: Fri, 06 Oct 2006 00:00:11 +0000 ccache version 2.4 [enabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: [Not Present] dev-lang/python: 2.3.5-r2, 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.60 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.13-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" CHOST="i686-pc-linux-gnu" CONFIG_PROTECT="/etc /usr/share/X11/xkb" CONFIG_PROTECT_MASK="/etc/env.d /etc/gconf /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distlocks metadata-transfer parallel-fetch sandbox sfperms strict userfetch userpriv usersandbox" GENTOO_MIRRORS="http://distfiles.gentoo.org http://distro.ibiblio.org/pub/linux/distributions/gentoo" LANG="en_US.utf8" LC_ALL="en_US.utf8" MAKEOPTS="-j2" PKGDIR="/usr/portage/packages" PORTAGE_RSYNC_EXTRA_OPTS="--exclude-from=/etc/portage/rsync_excludes" 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'" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 alsa berkdb bitmap-fonts cdr chroot cli crypt cscope cups dlloader dri dvd dvdr elibc_glibc encode esd f77 fbcon ffmpeg fftw flac fortran gdbm ggi gmp gnutls gpm imlib input_devices_evdev input_devices_keyboard input_devices_mouse ipv6 isdnlog kernel_linux libg++ matroska mikmod mmx ncurses nls nptl nptlonly oggvorbis opengl oss pam pcre pdflib perl png ppds pppd python readline reflection samba sdl session slang softmmu spl sse ssl tcpd theora truetype-fonts type1-fonts udev unicode userland_GNU userlocales video_cards_nv video_cards_nvidia x264 xorg xosd xv xvid zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LDFLAGS, LINGUAS
Can you reproduce the problem?
(In reply to comment #1) > Can you reproduce the problem? Everytime on all my gentoo boxes. - marcel@yoriko ~ % rtorrent - Then press backspace and add a torrent file (for example http://torrents.gentoo.org/torrents/install-x86-minimal-2006.1.torrent) - Press [ctrl]+d to stop the torrent and again [ctrl]+d to remove the torrent file (or just wait until the download is complete...) - Crash: rtorrent: ChunkList::clear() called but a valid node was found.
It happened to me one time, but now it's working fine. Can you please report this upstream?
(In reply to comment #3) > It happened to me one time, but now it's working fine. Can you please report > this upstream? As long as there is a 0.0 / x download it works fine, but when some KBs are downloaded rtorrent crashes as already explained. I tried to create a backtrace but gdb just tells me --- (gdb) exec-file /usr/bin/rtorrent (gdb) run Starting program: /usr/bin/rtorrent /usr/bin/rtorrent Using host libthread_db library "/lib/libthread_db.so.1". (no debugging symbols found) [...] (no debugging symbols found) rtorrent: ChunkList::clear() called but a valid node was found. Program exited with code 0377. --- I emerged rtorrent and librtorrent with the debug USE-Flag.
The debug useflag enables extra debug code, not debugging symbols. Please use http://www.gentoo.org/proj/en/qa/backtraces.xml to get a meaningful backtrace (upstream will ask for it, too).
Now I just get this: Starting program: /usr/bin/rtorrent rtorrent: ChunkList::clear() called but a valid node was found. Program exited with code 0377.
I get the same sort of Errors: Hashing: Storage error: [Hash checker was unable to map chunk: Cannot allocate memory] This is working with an Older torrent I was trying to download, on closing, I get: rtorrent: ChunkList::clear() called but a valid node was found. Thanks, cctsurf emerge --info Portage 2.1.2_pre2-r5 (default-linux/x86/2006.0, gcc-4.1.1, glibc-2.4-r4, 2.6.18-gentoo-a i686) ================================================================= System uname: 2.6.18-gentoo-a i686 Intel(R) Celeron(R) CPU 2.93GHz Gentoo Base System version 1.12.5 Last Sync: Sat, 07 Oct 2006 09:30:01 +0000 distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [enabled] ccache version 2.4 [enabled] app-admin/eselect-compiler: [Not Present] dev-java/java-config: 1.3.7, 2.0.30 dev-lang/python: 2.4.3-r4 dev-python/pycrypto: 2.0.1-r5 dev-util/ccache: 2.4-r6 dev-util/confcache: [Not Present] sys-apps/sandbox: 1.2.18.1 sys-devel/autoconf: 2.13, 2.60 sys-devel/automake: 1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2 sys-devel/binutils: 2.17 sys-devel/gcc-config: 1.3.13-r4 sys-devel/libtool: 1.5.22 virtual/os-headers: 2.6.17-r1 ACCEPT_KEYWORDS="x86 ~x86" AUTOCLEAN="yes" CBUILD="i686-pc-linux-gnu" CFLAGS="-march=prescott -O2 -pipe -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/X11/xkb /usr/share/config" CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo" CXXFLAGS="-march=prescott -O2 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="autoconfig ccache distcc distlocks metadata-transfer sandbox sfperms strict" GENTOO_MIRRORS="ftp://ftp.ussg.iu.edu/pub/linux/gentoo ftp://gentoo.chem.wisc.edu/gentoo/ ftp://ftp.ndlug.nd.edu/pub/gentoo/ ftp://gentoo.cites.uiuc.edu/pub/gentoo/ " MAKEOPTS="-j6" 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" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage" SYNC="rsync://rsync.gentoo.org/gentoo-portage" USE="x86 X aac acpi alsa apache2 audiofile berkdb bitmap-fonts bzip2 cdparanoia cdr cli crypt cups divx4linux dlloader dri dvd dvdr dvdread eds elibc_glibc emboss encode esd ffmpeg foomaticdb fortran gdbm gif glut gpm gstreamer gtk gtk2 hal imagemagick imlib input_devices_keyboard input_devices_mouse isdnlog java jpeg kde kernel_linux libg++ libwww lirc lirc_devices_serial lm_sensors mad mikmod mjpeg mmx mmx2 mmxext motif mp3 mpeg mplayer mysql mythtv ncurses nls nptl nptlonly nsplugin nvidia ogg openal opengl oss pam pcre pda pdflib perl png pppd python qt3 qt4 quicktime readline reflection samba sdl session sockets spell spl sse sse2 sse3 ssl subtitles szip tcpd threads truetype truetype-fonts type1-fonts udev usb userland_GNU v4l v4l2 vcd video_cards_nvidia video_cards_vesa video_cards_vga vorbis wifi win32codecs xine xml xmms xorg xv xvid xvmc zlib" Unset: CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, LINGUAS, PORTAGE_RSYNC_EXTRA_OPTS
According to a post on the rtorrent mailing list, this problem occurs with GCC 4.1.1 using -O2: http://rakshasa.no/pipermail/libtorrent-devel/2006-October/000887.html The problem does not occur for me when I change the -O2 in my CFLAGS ("-O2 -march=athlon-xp -mtune=athlon-xp -fomit-frame-pointer -pipe") to -O3.
Changing the CFLAGS from " -O2" to "-O3" solves the problem. Updated ebuilds are in portage now, so bug is fixed. ;)