Skip Menu |

This queue is for tickets about the Cairo CPAN distribution.

Report information
The Basics
Id: 26350
Status: resolved
Priority: 0/
Queue: Cairo

People
Owner: Nobody in particular
Requestors: mcummings [...] gentoo.org
Cc:
AdminCc:

Bug Information
Severity: Important
Broken in: 1.023
Fixed in: (no value)



Subject: Tests fail
PERL_DL_NONLAZY=1 /usr/bin/perl5.8.8 "-MExtUtils::Command::MM" "-e" "test_harness(0, 'blib/lib', 'blib/arch')" t/*.t t/Cairo...........ok t/CairoFont.......ok t/CairoMatrix.....ok t/CairoPath.......ok t/CairoPattern....ok t/CairoSurface....libpng error: Write Error libpng error: Write Error libpng error: Read Error dubious Test returned status 0 (wstat 11, 0xb) DIED. FAILED tests 45-64 Failed 20/64 tests, 68.75% okay Failed Test Stat Wstat Total Fail List of Failed ------------------------------------------------------------------------------- t/CairoSurface.t 0 11 64 40 45-64 Failed 1/6 test scripts. 20/171 subtests failed. Files=6, Tests=171, 1 wallclock secs ( 0.25 cusr + 0.08 csys = 0.33 CPU) Failed 1/6 test programs. 20/171 subtests failed. Summary of my perl5 (revision 5 version 8 subversion 8) configuration: Platform: osname=linux, osvers=2.6.18-gentoo, archname=x86_64-linux uname='linux paradox 2.6.18-gentoo #4 smp fri oct 20 15:59:46 edt 2006 x86_64 amd athlon(tm) 64 processor 3000+ authenticamd gnulinux ' config_args='-des -Darchname=x86_64-linux -Dcccdlflags=-fPIC -Dccdlflags=-rdynamic -Dcc=x86_64-pc-linux-gnu-gcc -Dprefix=/usr -Dvendorprefix=/usr -Dsiteprefix=/usr -Dlocincpth= -Doptimize=-O2 -pipe -Duselargefiles -Dd_semctl_semun -Dscriptdir=/usr/bin -Dman1dir=/usr/share/man/man1 -Dman3dir=/usr/share/man/man3 -Dinstallman1dir=/usr/share/man/man1 -Dinstallman3dir=/usr/share/man/man3 -Dman1ext=1 -Dman3ext=3pm -Dinc_version_list=5.8.0 5.8.0/x86_64-linux 5.8.2 5.8.2/x86_64-linux 5.8.4 5.8.4/x86_64-linux 5.8.5 5.8.5/x86_64-linux 5.8.6 5.8.6/x86_64-linux 5.8.7 5.8.7/x86_64-linux -Dinc_version_list=5.8.0 5.8.0/x86_64-linux 5.8.2 5.8.2/x86_64-linux 5.8.4 5.8.4/x86_64-linux 5.8.5 5.8.5/x86_64-linux 5.8.6 5.8.6/x86_64-linux 5.8.7 5.8.7/x86_64-linux -Dcf_by=Gentoo -Ud_csh -Dusenm -Di_ndbm -Di_gdbm -Di_db -Dusrinc=/usr/include/gentoo-multilib/amd64 -Dlibpth=/usr/local/lib64 /lib64 /usr/lib64' hint=recommended, useposix=true, d_sigaction=define usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef useperlio=define d_sfio=undef uselargefiles=define usesocks=undef use64bitint=define use64bitall=define uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='x86_64-pc-linux-gnu-gcc', ccflags ='-fno-strict-aliasing -pipe -Wdeclaration-after-statement -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2 -pipe', cppflags='-fno-strict-aliasing -pipe -Wdeclaration-after-statement' ccversion='', gccversion='4.1.2 (Gentoo 4.1.2)', gccosandvers='' intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678 d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16 ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8 alignbytes=8, prototype=define Linker and Libraries: ld='x86_64-pc-linux-gnu-gcc', ldflags =' -L/usr/local/lib64' libpth=/usr/local/lib64 /lib64 /usr/lib64 libs=-lpthread -lnsl -lndbm -lgdbm -ldb -ldl -lm -lcrypt -lutil -lc perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc libc=/lib/libc-2.5.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.5' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fPIC', lddlflags='-shared -L/usr/local/lib64' Characteristics of this binary (from libperl): Compile-time options: PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT USE_LARGE_FILES USE_PERLIO Built under linux Compiled at Apr 1 2007 16:58:49 @INC: /etc/perl /usr/lib64/perl5/vendor_perl/5.8.8/x86_64-linux /usr/lib64/perl5/vendor_perl/5.8.8 /usr/lib64/perl5/vendor_perl /usr/lib64/perl5/site_perl/5.8.8/x86_64-linux /usr/lib64/perl5/site_perl/5.8.8 /usr/lib64/perl5/site_perl /usr/lib64/perl5/5.8.8/x86_64-linux /usr/lib64/perl5/5.8.8 /usr/local/lib/site_perl . libng-1.2.16, cairo-1.4.2 Let me know if there's anything else I can share :)
Show quoted text
> t/CairoSurface....libpng error: Write Error > libpng error: Write Error > libpng error: Read Error > dubious
Looks like a segmentation fault. To debug this, I'd have to see a GDB backtrace and/or Valgrind output. To generate the latter something like this should work: valgrind --tool=memcheck --num-callers=100 perl t/CairoSurface.t
From: mcummings [...] gentoo.org
On Thu Apr 26 15:39:24 2007, TSCH wrote: Show quoted text
> valgrind --tool=memcheck --num-callers=100 perl t/CairoSurface.t
done (first attachment); and based on output, valgrind-full is with the --leak-check=full call
Download valgrind
application/octet-stream 1.7k

Message body not shown because it is not plain text.

Download valgrind-full
application/octet-stream 2.3k

Message body not shown because it is not plain text.

Show quoted text
> > valgrind --tool=memcheck --num-callers=100 perl t/CairoSurface.t
> > done (first attachment); and based on output, valgrind-full is with the > --leak-check=full call
Oh, you haven't actually installed the module. In that case you'll need to tell perl where to find it: valgrind --tool=memcheck --num-callers=100 perl -Mblib t/CairoSurface.t
From: mcummings [...] gentoo.org
On Sat Apr 28 09:45:17 2007, TSCH wrote: Show quoted text
> valgrind --tool=memcheck --num-callers=100 perl -Mblib t/CairoSurface.t
Yeah... had it installed, but was afraid that the library in the existing path might be skewing the results so I uninstalled it (was installed without passing tests btw). Attached are the valgrind outputs as requested, thanks!
Download 28-04-07-valgrind
application/octet-stream 5.1k

Message body not shown because it is not plain text.

On Sat Apr 28 10:58:36 2007, mcummings@gentoo.org wrote: Show quoted text
> Attached are the valgrind outputs as requested, thanks!
Hmm. If I had to guess, I'd say it's a problem in libcairo itself. Can you get a backtrace and/or valgrind log with a libcairo with debugging symbols?
From: mcummings [...] gentoo.org
Hope this helps - rebuilt libcairo (and version bumped) with debug symbols enabled, but I'm horrible at this level of debugging, so if anything is missing let me know. Thanks! (I'm not afraid to recompile parts with debugging enabled if it helps - but fwiw, i'm not the only one failing on this test :/) Program received signal SIGSEGV, Segmentation fault. [Switching to Thread 47055605820128 (LWP 21041)] 0x00002acbfcd415e0 in ?? () from /usr/lib/libcairo.so.2 (gdb) bt #0 0x00002acbfcd415e0 in ?? () from /usr/lib/libcairo.so.2 #1 0x00002acbfcd3333f in ?? () from /usr/lib/libcairo.so.2 #2 0x00002acbfcd248c3 in cairo_surface_finish () from /usr/lib/libcairo.so.2 #3 0x00002acbfcd24935 in cairo_surface_destroy () from /usr/lib/libcairo.so.2 #4 0x00002acbfcd2cf32 in ?? () from /usr/lib/libcairo.so.2 #5 0x00002acbfcd248c3 in cairo_surface_finish () from /usr/lib/libcairo.so.2 #6 0x00002acbfcd24935 in cairo_surface_destroy () from /usr/lib/libcairo.so.2 #7 0x00002acbfcbd4a40 in XS_Cairo__Surface_DESTROY () from /tmp/unpack/Cairo-1.023/blib/arch/auto/Cairo/Cairo.so #8 0x0000000000472e09 in Perl_pp_entersub () #9 0x0000000000421065 in ?? () #10 0x0000000000421e17 in Perl_call_sv () #11 0x000000000047c152 in Perl_sv_clear () #12 0x000000000047c8bb in Perl_sv_free () #13 0x0000000000498f36 in Perl_leave_scope () #14 0x000000000049cdda in Perl_pp_leaveloop () #15 0x00000000004715aa in Perl_runops_standard () #16 0x000000000042252c in perl_run () #17 0x000000000041eb6c in main ()
Download 29-04-07-valgrind
application/octet-stream 18.5k

Message body not shown because it is not plain text.

OK, I can reproduce this now. I think it's a cairo issue: <http://lists.freedesktop.org/archives/cairo/2007-May/010546.html> No response yet, unfortunately.
From: mcummings [...] gentoo.org
On Wed May 09 16:22:45 2007, TSCH wrote: Show quoted text
> OK, I can reproduce this now. I think it's a cairo issue: > <http://lists.freedesktop.org/archives/cairo/2007-May/010546.html> > > No response yet, unfortunately.
On the upside, at least I'm not insane :)
I've just released Cairo 1.040 which simply skips the troublesome tests for now.