[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: status of perl patch working around lack of TLS



Progress! It used to just hang the process until manually killed.
(Something like by the time the listener thread was setup the talker had
already exited, so it listened forever.)

On Tue, June 7, 2011 1:46 pm, Thorsten Glaser wrote:
> Dominic Hargreaves dixit:
>
>>- DEB_BUILD_OPTIONS=nocheck debuild -us -uc
>
> I skipped that part because I already have the latest
> Perl built and installed some time ago.
>
>>- Revert debian/patches/debian/m68k_thread_stress.diff locally
>>  (only patches the tests, so no rebuild needed)
>>- ./perl -Ilib dist/threads-shared/t/stress.t
>>- ./perl -Ilib dist/threads-shared/t/waithires.t
>>
>>Ought to do it, I think.
>
> Sure does, but the first test fails. It does, however, run for
> a while and produces a load of 40 during that time; is it sup-
> posed to do that? How does that test fare on other really slow
> architectures like avr32?
>
> root@ara5:~ # uname -a
> Linux ara5.mirbsd.org 2.6.39-1-atari #1 Sun May 22 15:49:20 UTC 2011 m68k
> GNU/Linux
>
> root@ara5:~/perl-5.12.3 # perl dist/threads-shared/t/stress.t
> 1..1
> not ok 1
> # Test failed: 45 threads timed out
> root@ara5:~/perl-5.12.3 # perl dist/threads-shared/t/waithires.t
> 1..57
> ok 1 - Loaded
> ok 2 - Shared synchronization tests preparation
> ok 3 - cond_timedwait [simple]: obtained initial lock
> ok 4 - cond_timedwait [simple]: child before lock
> ok 5 - cond_timedwait [simple]: child obtained lock
> ok 6 - cond_timedwait [simple]: child signalled condition
> ok 7 - cond_timedwait [simple]: condition obtained
> ok 8 - cond_timedwait [repeat]: obtained initial lock
> ok 9 - cond_timedwait [repeat]: child before lock
> ok 10 - cond_timedwait [repeat]: child obtained lock
> ok 11 - cond_timedwait [repeat]: child signalled condition
> ok 12 - cond_timedwait [repeat]: condition obtained
> ok 13 - cond_timedwait [twain]: obtained initial lock
> ok 14 - cond_timedwait [twain]: child before lock
> ok 15 - cond_timedwait [twain]: child obtained lock
> ok 16 - cond_timedwait [twain]: child signalled condition
> ok 17 - cond_timedwait [twain]: condition obtained
> ok 18 - cond_timedwait pause, timeout [simple]: obtained initial lock
> ok 19 - cond_timedwait pause, timeout [simple]: timeout
> ok 20 - cond_timedwait pause, timeout [repeat]: obtained initial lock
> ok 21 - cond_timedwait pause, timeout [repeat]: timeout
> ok 22 - cond_timedwait pause, timeout [twain]: obtained initial lock
> ok 23 - cond_timedwait pause, timeout [twain]: timeout
> ok 24 - cond_timedwait instant timeout [simple]: obtained initial lock
> ok 25 - cond_timedwait instant timeout [simple]: timeout
> ok 26 - cond_timedwait instant timeout [repeat]: obtained initial lock
> ok 27 - cond_timedwait instant timeout [repeat]: timeout
> ok 28 - cond_timedwait instant timeout [twain]: obtained initial lock
> ok 29 - cond_timedwait instant timeout [twain]: timeout
> ok 30 - Synchronization reference tests preparation
> ok 31 - cond_timedwait [simple]: obtained initial lock
> ok 32 - cond_timedwait [simple]: child before lock
> ok 33 - cond_timedwait [simple]: child obtained lock
> ok 34 - cond_timedwait [simple]: child signalled condition
> ok 35 - cond_timedwait [simple]: condition obtained
> ok 36 - cond_timedwait [repeat]: obtained initial lock
> ok 37 - cond_timedwait [repeat]: child before lock
> ok 38 - cond_timedwait [repeat]: child obtained lock
> ok 39 - cond_timedwait [repeat]: child signalled condition
> ok 40 - cond_timedwait [repeat]: condition obtained
> ok 41 - cond_timedwait [twain]: obtained initial lock
> ok 42 - cond_timedwait [twain]: child before lock
> ok 43 - cond_timedwait [twain]: child obtained lock
> ok 44 - cond_timedwait [twain]: child signalled condition
> ok 45 - cond_timedwait [twain]: condition obtained
> ok 46 - cond_timedwait pause, timeout [simple]: obtained initial lock
> ok 47 - cond_timedwait pause, timeout [simple]: timeout
> ok 48 - cond_timedwait pause, timeout [repeat]: obtained initial lock
> ok 49 - cond_timedwait pause, timeout [repeat]: timeout
> ok 50 - cond_timedwait pause, timeout [twain]: obtained initial lock
> ok 51 - cond_timedwait pause, timeout [twain]: timeout
> ok 52 - cond_timedwait instant timeout [simple]: obtained initial lock
> ok 53 - cond_timedwait instant timeout [simple]: timeout
> ok 54 - cond_timedwait instant timeout [repeat]: obtained initial lock
> ok 55 - cond_timedwait instant timeout [repeat]: timeout
> ok 56 - cond_timedwait instant timeout [twain]: obtained initial lock
> ok 57 - cond_timedwait instant timeout [twain]: timeout
> root@ara5:~/perl-5.12.3 # perl -V
> Summary of my perl5 (revision 5 version 12 subversion 3) configuration:
>
>   Platform:
>     osname=linux, osvers=2.6.38-2-atari,
> archname=m68k-linux-gnu-thread-multi-64int
>     uname='linux aranym.mirbsd.org 2.6.38-2-atari #1 mon may 9 16:39:31
> utc 2011 m68k gnulinux '
>     config_args='-Dusethreads -Duselargefiles -Dccflags=-DDEBIAN
> -fno-regmove -Dcccdlflags=-fPIC -Darchname=m68k-linux-gnu
> -Dprefix=/usr -Dprivlib=/usr/share/perl/5.12
> -Darchlib=/usr/lib/perl/5.12 -Dvendorprefix=/usr
> -Dvendorlib=/usr/share/perl5 -Dvendorarch=/usr/lib/perl5
> -Dsiteprefix=/usr/local -Dsitelib=/usr/local/share/perl/5.12.3
> -Dsitearch=/usr/local/lib/perl/5.12.3 -Dman1dir=/usr/share/man/man1
> -Dman3dir=/usr/share/man/man3 -Dsiteman1dir=/usr/local/man/man1
> -Dsiteman3dir=/usr/local/man/man3 -Duse64bitint -Dman1ext=1
> -Dman3ext=3perl -Dpager=/usr/bin/sensible-pager -Uafs -Ud_csh
> -Ud_ualarm -Uusesfio -Uusenm -Ui_libutil -DDEBUGGING=-g -Doptimize=-O2
> -Dplibpth=/lib/m68k-linux-gnu /usr/lib/m68k-linux-gnu -Duseshrplib
> -Dlibperl=libperl.so.5.12.3 -des'
>     hint=recommended, useposix=true, d_sigaction=define
>     useithreads=define, usemultiplicity=define
>     useperlio=define, d_sfio=undef, uselargefiles=define, usesocks=undef
>     use64bitint=define, use64bitall=undef, uselongdouble=undef
>     usemymalloc=n, bincompat5005=undef
>   Compiler:
>     cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-regmove
> -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include
> -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64',
>     optimize='-O2 -g',
>     cppflags='-D_REENTRANT -D_GNU_SOURCE -DDEBIAN -fno-regmove
> -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include'
>     ccversion='', gccversion='4.4.6', gccosandvers=''
>     intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=87654321
>     d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
>     ivtype='long long', ivsize=8, nvtype='double', nvsize=8,
> Off_t='off_t', lseeksize=8
>     alignbytes=2, prototype=define
>   Linker and Libraries:
>     ld='cc', ldflags =' -fstack-protector -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.13.so, so=so, useshrplib=true,
> libperl=libperl.so.5.12.3
>     gnulibc_version='2.13'
>   Dynamic Linking:
>     dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
>     cccdlflags='-fPIC', lddlflags='-shared -O2 -g -L/usr/local/lib
> -fstack-protector'
>
>
> Characteristics of this binary (from libperl):
>   Compile-time options: MULTIPLICITY PERL_DONT_CREATE_GVSV
>                         PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP
> USE_64_BIT_INT
>                         USE_ITHREADS USE_LARGE_FILES USE_PERLIO
> USE_PERL_ATOF
>                         USE_REENTRANT_API
>   Locally applied patches:
>         DEBPKG:debian/arm_thread_stress_timeout -
> http://bugs.debian.org/501970 Raise the timeout of
> ext/threads/shared/t/stress.t to accommodate slower build hosts
>         DEBPKG:debian/cpan_config_path - Set location of CPAN::Config to
> /etc/perl as /usr may not be writable.
>         DEBPKG:debian/cpan_definstalldirs - Provide a sensible INSTALLDIRS
> default for modules installed from CPAN.
>         DEBPKG:debian/db_file_ver - http://bugs.debian.org/340047 Remove
> overly restrictive DB_File version check.
>         DEBPKG:debian/doc_info - Replace generic man(1) instructions with
> Debian-specific information.
>         DEBPKG:debian/enc2xs_inc - http://bugs.debian.org/290336 Tweak
> enc2xs to follow symlinks and ignore missing @INC directories.
>         DEBPKG:debian/errno_ver - http://bugs.debian.org/343351 Remove
> Errno version check due to upgrade problems with long-running
> processes.
>         DEBPKG:debian/extutils_hacks - Various debian-specific ExtUtils
> changes
>         DEBPKG:debian/fakeroot - Postpone LD_LIBRARY_PATH evaluation to
> the binary targets.
>         DEBPKG:debian/instmodsh_doc - Debian policy doesn't install
> .packlist files for core or vendor.
>         DEBPKG:debian/ld_run_path - Remove standard libs from LD_RUN_PATH
> as per Debian policy.
>         DEBPKG:debian/libnet_config_path - Set location of libnet.cfg to
> /etc/perl/Net as /usr may not be writable.
>         DEBPKG:debian/m68k_thread_stress - http://bugs.debian.org/495826
> Disable some threads tests on m68k for now due to missing TLS.
>         DEBPKG:debian/mod_paths - Tweak @INC ordering for Debian
>         DEBPKG:debian/module_build_man_extensions -
> http://bugs.debian.org/479460 Adjust Module::Build manual page
> extensions for the Debian Perl policy
>         DEBPKG:debian/prune_libs - http://bugs.debian.org/128355 Prune the
> list of libraries wanted to what we actually need.
>         DEBPKG:fixes/net_smtp_docs - http://bugs.debian.org/100195
> [rt.cpan.org #36038] Document the Net::SMTP 'Port' option
>         DEBPKG:fixes/processPL - http://bugs.debian.org/357264
> [rt.cpan.org #17224] Always use PERLRUNINST when building perl
> modules.
>         DEBPKG:debian/perlivp - http://bugs.debian.org/510895 Make perlivp
> skip include directories in /usr/local
>         DEBPKG:debian/disable-zlib-bundling - Disable zlib bundling in
> Compress::Raw::Zlib
>         DEBPKG:debian/cpanplus_definstalldirs -
> http://bugs.debian.org/533707 Configure CPANPLUS to use the site
> directories by default.
>         DEBPKG:debian/cpanplus_config_path - Save local versions of
> CPANPLUS::Config::System into /etc/perl.
>         DEBPKG:fixes/autodie-flock - http://bugs.debian.org/543731 Allow
> for flock returning EAGAIN instead of EWOULDBLOCK on linux/parisc
>         DEBPKG:debian/devel-ppport-ia64-optim -
> http://bugs.debian.org/548943 Work around an ICE on ia64
>         DEBPKG:fixes/cpanplus-without-home - http://bugs.debian.org/577011
> [rt.cpan.org #52988] Fix CPANPLUS test failures when HOME doesn't
> exist
>         DEBPKG:debian/arm_optim - http://bugs.debian.org/580334 Downgrade
> the optimization of sv.c on arm due to a gcc-4.4 bug
>         DEBPKG:debian/deprecate-with-apt - http://bugs.debian.org/580034
> Point users to Debian packages of deprecated core modules
>         DEBPKG:fixes/hurd-ccflags - http://bugs.debian.org/587901 Make
> hints/gnu.sh append to $ccflags rather than overriding them
>         DEBPKG:debian/squelch-locale-warnings -
> http://bugs.debian.org/508764 Squelch locale warnings in Debian
> package maintainer scripts
>         DEBPKG:fixes/lc-numeric-docs - http://bugs.debian.org/379329 [perl
> #78452] [903eb63] LC_NUMERIC documentation fixes
>         DEBPKG:fixes/lc-numeric-sprintf - http://bugs.debian.org/601549
> [perl #78632] [b3fd614] Fix sprintf not to ignore LC_NUMERIC with
> constants
>         DEBPKG:fixes/concat-stack-corruption -
> http://bugs.debian.org/596105 [perl #78674] [e3393f5] Fix stack
> pointer corruption in pp_concat() with 'use encoding'
>         DEBPKG:fixes/h2ph-gcc-4.5 - http://bugs.debian.org/599933
> [8d66b3f] h2ph fix for gcc 4.5
>         DEBPKG:fixes/casing-taint-cve-2011-1487 -
> http://bugs.debian.org/622817 [perl #87336] fix unwanted taint
> laundering in lc(), uc() et al.
>         DEBPKG:fixes/correct-module-corelist-version - [a0a0e54] Correct
> the version of Module::CoreList that was released with v5.12.3
>         DEBPKG:fixes/module-build-home-directory -
> http://bugs.debian.org/624850 [rt.cpan.org #67893] Fix failing
> tilde test when run under a UID without a passwd entry
>         DEBPKG:patchlevel - http://bugs.debian.org/567489 List packaged
> patches for 5.12.3-7 in patchlevel.h
>   Built under linux
>   Compiled at May 25 2011 01:51:30
>   @INC:
>     /etc/perl
>     /usr/local/lib/perl/5.12.3
>     /usr/local/share/perl/5.12.3
>     /usr/lib/perl5
>     /usr/share/perl5
>     /usr/lib/perl/5.12
>     /usr/share/perl/5.12
>     /usr/local/lib/site_perl
>     .
>
>
> bye,
> //mirabilos
> --
> 22:59â??<Vutral> glaub ich termkit is kompliziert | glabe nicht das man
> damit schneller arbeitet | reizüberflutung â?? wie windows â?? alles evil
> zuviel bilder â?? wie ein spiel | 23:00â??<Vutral> die meisten raffen auch
> nicht mehr von windows | 23:01â??<Vutral> bilderbücher sind ja auch nich
> wirklich verbreitet als erwachsenen literatur	â?£ who needs GUIs thus?
>
>
> --
> To UNSUBSCRIBE, email to debian-68k-REQUEST@lists.debian.org
> with a subject of "unsubscribe". Trouble? Contact
> listmaster@lists.debian.org
> Archive:
> Pine.BSM.4.64L.1106071844040.20911@herc.mirbsd.org">http://lists.debian.org/Pine.BSM.4.64L.1106071844040.20911@herc.mirbsd.org
>
>


-- 
Stephen R. Marenka     If life's not fun, you're not doing it right!
<stephen@marenka.net>


Reply to: