[svk-devel] svk crash

Nelson Elhage nelhage at bestpractical.com
Wed Dec 6 19:35:14 EST 2006


I can reliably crash svk on my laptop with ``svk diff'' on certain past
revisions on a checkout of a local branch on my laptop. A crash log and
version infor for svn, svk, and perl are attached; There is a core file
of the crash online at http://web.mit.edu/nelhage/Public/svk.core

- Nelson Elhage

-------------- next part --------------
[nelhage at phanatique:~/mit/6.828/branches/tcc]$ svk diff -r:13057:13058
svk diff -r:13057:13058
Can't locate object method "copath" via package "SVK::Path" at /usr/local/share/perl/5.8.8/SVK/Command/Diff.pm line 113.
*** glibc detected *** /usr/bin/perl: double free or corruption (!prev): 0x08d2cc90 ***
======= Backtrace: =========
/lib/tls/i686/cmov/libc.so.6[0xb7e338bd]
/lib/tls/i686/cmov/libc.so.6(__libc_free+0x84)[0xb7e33a44]
/usr/lib/libapr-0.so.0(apr_allocator_destroy+0x2d)[0xb7b9ff3d]
/usr/lib/libapr-0.so.0(apr_pool_destroy+0x195)[0xb7ba0655]
/usr/lib/libapr-0.so.0(apr_pool_terminate+0x3e)[0xb7ba086e]
/usr/lib/libapr-0.so.0(apr_terminate+0x2a)[0xb7b9c74a]
/usr/lib/perl5/auto/SVN/_Core/_Core.so(_wrap_apr_terminate+0x90)[0xb7c12010]
/usr/bin/perl(Perl_pp_entersub+0x3a3)[0x80bc821]
/usr/bin/perl(Perl_runops_standard+0x13)[0x80bb273]
/usr/bin/perl[0x806254c]
/usr/bin/perl(Perl_call_sv+0x576)[0x80630f2]
/usr/bin/perl(Perl_call_list+0x1f6)[0x80633f8]
/usr/bin/perl(perl_destruct+0x11fb)[0x80682fc]
/usr/bin/perl(main+0xc6)[0x805ffc6]
/lib/tls/i686/cmov/libc.so.6(__libc_start_main+0xdc)[0xb7de28cc]
/usr/bin/perl[0x805fe81]
======= Memory map: ========
08048000-08142000 r-xp 00000000 08:01 344829     /usr/bin/perl
08142000-08146000 rw-p 000fa000 08:01 344829     /usr/bin/perl
08146000-08dd4000 rw-p 08146000 00:00 0          [heap]
b7200000-b7221000 rw-p b7200000 00:00 0 
b7221000-b7300000 ---p b7221000 00:00 0 
b737d000-b737f000 r-xp 00000000 08:01 493032     /usr/lib/perl/5.8.8/auto/PerlIO/scalar/scalar.so
b737f000-b7380000 rw-p 00001000 08:01 493032     /usr/lib/perl/5.8.8/auto/PerlIO/scalar/scalar.so
b739c000-b73a6000 r-xp 00000000 08:01 2932803    /lib/libgcc_s.so.1
b73a6000-b73a7000 rw-p 00009000 08:01 2932803    /lib/libgcc_s.so.1
b73b4000-b73b7000 r-xp 00000000 08:01 492803     /usr/lib/perl/5.8.8/auto/Digest/MD5/MD5.so
b73b7000-b73b8000 rw-p 00002000 08:01 492803     /usr/lib/perl/5.8.8/auto/Digest/MD5/MD5.so
b73b8000-b73bb000 r-xp 00000000 08:01 492849     /usr/lib/perl/5.8.8/auto/I18N/Langinfo/Langinfo.so
b73bb000-b73bc000 rw-p 00002000 08:01 492849     /usr/lib/perl/5.8.8/auto/I18N/Langinfo/Langinfo.so
b73bc000-b73c4000 r-xp 00000000 08:01 492819     /usr/lib/perl/5.8.8/auto/Encode/Encode.so
b73c4000-b73c5000 rw-p 00007000 08:01 492819     /usr/lib/perl/5.8.8/auto/Encode/Encode.so
b73c5000-b73e1000 r-xp 00000000 08:01 754875     /usr/local/lib/perl/5.8.8/auto/YAML/Syck/Syck.so
b73e1000-b73e2000 rw-p 0001c000 08:01 754875     /usr/local/lib/perl/5.8.8/auto/YAML/Syck/Syck.so
b73e2000-b740b000 r-xp 00000000 08:01 737882     /usr/lib/perl5/auto/SVN/_Fs/_Fs.so
b740b000-b740d000 rw-p 00029000 08:01 737882     /usr/lib/perl5/auto/SVN/_Fs/_Fs.so
b740d000-b7449000 r-xp 00000000 08:01 737888     /usr/lib/perl5/auto/SVN/_Repos/_Repos.so
b7449000-b744c000 rw-p 0003b000 08:01 737888     /usr/lib/perl5/auto/SVN/_Repos/_Repos.so
b744c000-b7467000 r-xp 00000000 08:01 492870     /usr/lib/perl/5.8.8/auto/POSIX/POSIX.so
b7467000-b7468000 rw-p 0001a000 08:01 492870     /usr/lib/perl/5.8.8/auto/POSIX/POSIX.so
b7468000-b748d000 r-xp 00000000 08:01 346681     /usr/lib/libsvn_client-1.so.0.0.0
b748d000-b748e000 rw-p 00025000 08:01 346681     /usr/lib/libsvn_client-1.so.0.0.0
b748e000-b74ea000 r-xp 00000000 08:01 737876     /usr/lib/perl5/auto/SVN/_Client/_Client.so
b74ea000-b74ed000 rw-p 0005c000 08:01 737876     /usr/lib/perl5/auto/SVN/_Client/_Client.so
b74ed000-b7517000 r-xp 00000000 08:01 346678     /usr/lib/libsvn_wc-1.so.0.0.0
b7517000-b7518000 rw-p 00029000 08:01 346678     /usr/lib/libsvn_wc-1.so.0.0.0
b7518000-b7586000 r-xp 00000000 08:01 737891     /usr/lib/perl5/auto/SVN/_Wc/_Wc.so
b7586000-b7589000 rw-p 0006e000 08:01 737891     /usr/lib/perl5/auto/SVN/_Wc/_Wc.so
b7589000-b759c000 r-xp 00000000 08:01 346058     /usr/lib/libz.so.1.2.3
b759c000-b759d000 rw-p 00012000 08:01 346058     /usr/lib/libz.so.1.2.3
b759d000-b76b0000 r-xp 00000000 08:01 346046     /usr/lib/libxml2.so.2.6.26
b76b0000-b76b5000 rw-p 00113000 08:01 346046     /usr/lib/libxml2.so.2.6.26
b76b5000-b76b6000 rw-p b76b5000 00:00 0 
b76b6000-b76c5000 r-xp 00000000 08:01 2966172    /lib/tls/i686/cmov/libresolv-2.4.so
b76c5000-b76c7000 rw-p 0000f000 08:01 2966172    /lib/tls/i686/cmov/libresolv-2.4.so
b76c7000-b76c9000 rw-p b76c7000 00:00 0 
b76c9000-b76cb000 r-xp 00000000 08:0
-------------- next part --------------
[nelhage at phanatique:~]$ perl -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
  Platform:
    osname=linux, osvers=2.6.15.7, archname=i486-linux-gnu-thread-multi
    uname='linux rothera 2.6.15.7 #1 smp tue jun 27 18:34:43 utc 2006 i686 gnulinux '
    config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN -Dcccdlflags=-fPIC -Darchname=i486-linux-gnu -Dprefix=/usr -Dprivlib=/usr/share/perl/5.8 -Darchlib=/usr/lib/perl/5.8 -Dvendorprefix=/usr -Dvendorlib=/usr/share/perl5 -Dvendorarch=/usr/lib/perl5 -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.8.8 -Dsitearch=/usr/local/lib/perl/5.8.8 -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dsiteman1dir=/usr/local/man/man1 -Dsiteman3dir=/usr/local/man/man3 -Dman1ext=1 -Dman3ext=3perl -Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh -Uusesfio -Uusenm -Duseshrplib -Dlibperl=libperl.so.5.8.8 -Dd_dosuid -des'
    hint=recommended, useposix=true, d_sigaction=define
    usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
    useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
    use64bitint=undef use64bitall=undef uselongdouble=undef
    usemymalloc=n, bincompat5005=undef
  Compiler:
    cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
    optimize='-O2',
    cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBIAN -fno-strict-aliasing -pipe -I/usr/local/include'
    ccversion='', gccversion='4.1.2 20060613 (prerelease) (Ubuntu 4.1.1-2ubuntu5)', gccosandvers=''
    intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
    d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
    ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='cc', ldflags =' -L/usr/local/lib'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lgdbm -lgdbm_compat -ldb -ldl -lm -lpthread -lc -lcrypt
    perllibs=-ldl -lm -lpthread -lc -lcrypt
    libc=/lib/libc-2.4.so, so=so, useshrplib=true, libperl=libperl.so.5.8.8
    gnulibc_version='2.4'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
    cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib'


Characteristics of this binary (from libperl): 
  Compile-time options: MULTIPLICITY PERL_IMPLICIT_CONTEXT
                        PERL_MALLOC_WRAP THREADS_HAVE_PIDS USE_ITHREADS
                        USE_LARGE_FILES USE_PERLIO USE_REENTRANT_API
  Built under linux
  Compiled at Jul  7 2006 18:08:25
  %ENV:
    PERL5LIB="/home/nelhage/code/jifty/trunk/lib:/home/nelhage/Jifty-DBI/trunk/lib"
  @INC:
    /home/nelhage/code/jifty/trunk/lib
    /home/nelhage/Jifty-DBI/trunk/lib
    /etc/perl
    /usr/local/lib/perl/5.8.8
    /usr/local/share/perl/5.8.8
    /usr/lib/perl5
    /usr/share/perl5
    /usr/lib/perl/5.8
    /usr/share/perl/5.8
    /usr/local/lib/site_perl
    .
[nelhage at phanatique:~]$ svk --version
This is svk, version 1.99_04 (using Subversion bindings 1.3.2)
[nelhage at phanatique:~]$ svn --version
svn, version 1.3.2 (r19776)
   compiled Oct  4 2006, 23:52:00

Copyright (C) 2000-2006 CollabNet.
Subversion is open source software, see http://subversion.tigris.org/
This product includes software developed by CollabNet (http://www.Collab.Net/).

The following repository access (RA) modules are available:

* ra_dav : Module for accessing a repository via WebDAV (DeltaV) protocol.
  - handles 'http' scheme
  - handles 'https' scheme
* ra_svn : Module for accessing a repository using the svn network protocol.
  - handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
  - handles 'file' scheme

[nelhage at phanatique:~]$ svk info ~/mit/6.828/branches/tcc
Checkout Path: /home/nelhage/mit/6.828/branches/tcc
Depot Path: //local/psets/6.828/branches/tcc
Revision: 15553
Last Changed Rev.: 15551
Copied From: /mirror/psets/6.828/branches/tcc, Rev. 13105
Copied From: /mirror/psets/6.828/lab6, Rev. 13038
Copied From: /mirror/psets/6.828/lab5, Rev. 13004
Copied From: /mirror/psets/6.828/lab4, Rev. 12979
Merged From: /mirror/psets/6.828/branches/tcc, Rev. 13105
Merged From: /mirror/psets/6.828/lab6, Rev. 13038
Merged From: /mirror/psets/6.828/lab5, Rev. 13004
Merged From: /mirror/psets/6.828/lab4, Rev. 12979


More information about the svk-devel mailing list