develooper Front page | perl.perl5.porters | Postings from October 2016

[perl #129953] ib/locale.t: Test failures and segfaulting onFreeBSD-11 and -12

From:
James E Keenan
Date:
October 24, 2016 12:16
Subject:
[perl #129953] ib/locale.t: Test failures and segfaulting onFreeBSD-11 and -12
Message ID:
rt-4.0.24-22193-1477311374-1248.129953-75-0@perl.org
# New Ticket Created by  James E Keenan 
# Please include the string:  [perl #129953]
# in the subject line of all future correspondence about this issue. 
# <URL: https://rt.perl.org/Ticket/Display.html?id=129953 >


This is a bug report for perl from jkeenan@cpan.org,
generated with the help of perlbug 1.40 running under perl 5.24.0.

lib/locale.t: Test failures and segfaulting on FreeBSD-11 and -12

Up to August of this year we had not been receiving any smoke-test 
reports for Perl 5 blead on any version of FreeBSD for some time.  In 
August I began submitting smoke-test reports for FreeBSD-10.3-RELEASE; a 
bug was found in FreeBSD itself, reported to FreeBSD (since addressed), 
and worked-around by Karl Williamson.

In October FreeBSD designated version 11.0 as RELEASE and I set up a VM 
on which to smoke-test it.  Subsequently Dan Collins similarly set up a 
VM for smoke-testing FreeBSD-12-CURRENT.  Both versions have been 
reporting test failures and/or segfaults in lib/locale.t.  See, e.g.:

FreeBSD-11: http://perl5.test-smoke.org/report/50816
FreeBSD-12: http://perl5.test-smoke.org/report/50812

The source code which leads to these failures was committed to blead in 
May of this year and has tested well on Linux.  On FreeBSD-10.3 
lib/locale.t's performance gets sluggish but does not fail outright or 
segfault.

The segfault typically happens after test 380 in lib/locale.t.  On 
FreeBSD-11 I found that test failures first appeared at or around commit 
4ebeff1.  Outright segfaulting began at a4a439f.

Karl, Dan and I have been discussing these failures off-list.  Now that 
we have replicable smoke tests, this is a good time to bring the 
discussion into RT and therefore on-list.  Karl has created this branch:

origin/smoke-me/khw-locale

... that we are currently testing.  Results are promising.

Note:  The 'perl -V' output included is that of a build of blead on
FreeBSD-11.0 in which lib/locale.t is typically segfaulting.

Thank you very much.
Jim Keenan

---
Flags:
     category=core
     severity=medium
---
Summary of my perl5 (revision 5 version 25 subversion 7) configuration:
   Commit id: 92c843fb4b4e1a1e0ac7ec0fe198dc77266838da
   Platform:
     osname=freebsd
     osvers=11.0-release-p1
     archname=amd64-freebsd-thread-multi
     uname='freebsd kid51.freebsd11 11.0-release-p1 freebsd 
11.0-release-p1 #0 r306420: thu sep 29 01:43:23 utc 2016 
root@releng2.nyi.freebsd.org:usrobjusrsrcsysgeneric amd64 '
     config_args='-des -Dusedevel -Duseithreads'
     hint=recommended
     useposix=true
     d_sigaction=define
     useithreads=define
     usemultiplicity=define
     use64bitint=define
     use64bitall=define
     uselongdouble=undef
     usemymalloc=n
     bincompat5005=undef
   Compiler:
     cc='cc'
     ccflags ='-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H 
-fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include 
-D_FORTIFY_SOURCE=2'
     optimize='-O'
     cppflags='-DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H 
-fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include'
     ccversion=''
     gccversion='4.2.1 Compatible FreeBSD Clang 3.8.0 
(tags/RELEASE_380/final 262564)'
     gccosandvers=''
     intsize=4
     longsize=8
     ptrsize=8
     doublesize=8
     byteorder=12345678
     doublekind=3
     d_longlong=define
     longlongsize=8
     d_longdbl=define
     longdblsize=16
     longdblkind=3
     ivtype='long'
     ivsize=8
     nvtype='double'
     nvsize=8
     Off_t='off_t'
     lseeksize=8
     alignbytes=8
     prototype=define
   Linker and Libraries:
     ld='cc'
     ldflags ='-pthread -Wl,-E  -fstack-protector-strong -L/usr/local/lib'
     libpth=/usr/lib /usr/local/lib /usr/bin/../lib/clang/3.8.0/lib /usr/lib
     libs=-lpthread -lgdbm -lm -lcrypt -lutil
     perllibs=-lpthread -lm -lcrypt -lutil
     libc=
     so=so
     useshrplib=false
     libperl=libperl.a
     gnulibc_version=''
   Dynamic Linking:
     dlsrc=dl_dlopen.xs
     dlext=so
     d_dlsymun=undef
     ccdlflags=' '
     cccdlflags='-DPIC -fPIC'
     lddlflags='-shared  -L/usr/local/lib -fstack-protector-strong'


Characteristics of this binary (from libperl):
   Compile-time options:
     HAS_TIMES
     MULTIPLICITY
     PERLIO_LAYERS
     PERL_COPY_ON_WRITE
     PERL_DONT_CREATE_GVSV
     PERL_HASH_FUNC_ONE_AT_A_TIME_HARD
     PERL_IMPLICIT_CONTEXT
     PERL_MALLOC_WRAP
     PERL_OP_PARENT
     PERL_PRESERVE_IVUV
     PERL_USE_DEVEL
     USE_64_BIT_ALL
     USE_64_BIT_INT
     USE_ITHREADS
     USE_LARGE_FILES
     USE_LOCALE
     USE_LOCALE_COLLATE
     USE_LOCALE_CTYPE
     USE_LOCALE_NUMERIC
     USE_LOCALE_TIME
     USE_PERLIO
     USE_PERL_ATOF
     USE_REENTRANT_API
   Built under freebsd
   Compiled at Oct 24 2016 08:06:55
   %ENV:
     PERL_WORKDIR="/home/jkeenan/gitwork/perl"
   @INC:
     lib
     /usr/local/lib/perl5/site_perl/5.25.7/amd64-freebsd-thread-multi
     /usr/local/lib/perl5/site_perl/5.25.7
     /usr/local/lib/perl5/5.25.7/amd64-freebsd-thread-multi
     /usr/local/lib/perl5/5.25.7
     .




nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About