Subject: | BSD-Sysctl: t/03-iterator.t segfaults on perl-5.31.0 on FreeBSD-12 |
As stated in the subject. Observed in the course of CPAN-River-3000 testing against perl-5.31.0 on FreeBSD-12.
#####
[BSD-Sysctl-0.11] $ thisperl -Ilib -Iblib/lib -Iblib/arch/auto/BSD/Sysctl t/03-iterator.t
1..15
ok 1 - defined a BSD::Sysctl iterator
Segmentation fault (core dumped)
#####
[BSD-Sysctl-0.11] $ thisperl -V
Summary of my perl5 (revision 5 version 31 subversion 0) configuration:
Platform:
osname=freebsd
osvers=12.0-release
archname=amd64-freebsd-thread-multi
uname='freebsd perl-reporter-07 12.0-release freebsd 12.0-release r341666 generic amd64 '
config_args='-des -Dusedevel -Uversiononly -Dman1dir=none -Dman3dir=none -Duseithreads -Doptimize=-O2 -pipe -fstack-protector -fno-strict-aliasing -Dprefix=/home/jkeenan/var/tad/testing/perl-5.31.0'
hint=recommended
useposix=true
d_sigaction=define
useithreads=define
usemultiplicity=define
use64bitint=define
use64bitall=define
uselongdouble=undef
usemymalloc=n
default_inc_excludes_dot=define
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='-O2 -pipe -fstack-protector -fno-strict-aliasing'
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 6.0.1 (tags/RELEASE_601/final 335540)'
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/lib/clang/6.0.1/lib /usr/lib
libs=-lpthread -lgdbm -ldl -lm -lcrypt -lutil
perllibs=-lpthread -ldl -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_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
USE_THREAD_SAFE_LOCALE
Built under freebsd
Compiled at Jul 10 2019 10:35:51
%ENV:
PERL2DIR="/home/jkeenan/gitwork/perl2"
PERL_WORKDIR="/home/jkeenan/gitwork/perl"
@INC:
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0/amd64-freebsd-thread-multi
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0
/home/jkeenan/var/tad/testing/perl-5.31.0/lib
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/site_perl/5.31.0/amd64-freebsd-thread-multi
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/site_perl/5.31.0
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0/amd64-freebsd-thread-multi
/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0
#####
[BSD-Sysctl-0.11] $ uname -mrs
FreeBSD 12.0-RELEASE amd64
#####
[analysis] $ dumpjson DLAND.BSD-Sysctl-0.11.log.json
{
author => "DLAND",
dist => "BSD-Sysctl",
distname => "BSD-Sysctl-0.11",
distversion => 0.11,
grade => "FAIL",
prereqs => undef,
test_output => [
"Building and testing BSD-Sysctl-0.11",
"cp bsd-sysctl.pl blib/lib/BSD/bsd-sysctl.pl",
"cp Sysctl.pm blib/lib/BSD/Sysctl.pm",
"Running Mkbootstrap for Sysctl ()",
"chmod 644 \"Sysctl.bs\"",
"\"/usr/home/jkeenan/var/tad/testing/perl-5.31.0/bin/perl\" -MExtUtils::Command::MM -e 'cp_nonempty' -- Sysctl.bs blib/arch/auto/BSD/Sysctl/Sysctl.bs 644",
"\"/usr/home/jkeenan/var/tad/testing/perl-5.31.0/bin/perl\" \"/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0/ExtUtils/xsubpp\" -typemap '/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0/ExtUtils/typemap' -typemap '/usr/home/jkeenan/var/tad/testing/perl-5.31.0/.cpanm/work/1562787494.14114/BSD-Sysctl-0.11/typemap' Sysctl.xs > Sysctl.xsc",
"mv Sysctl.xsc Sysctl.c",
"cc -c -DHAS_FPSETMASK -DHAS_FLOATINGPOINT_H -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_FORTIFY_SOURCE=2 -O2 -pipe -fstack-protector -fno-strict-aliasing -DVERSION=\\\"0.11\\\" -DXS_VERSION=\\\"0.11\\\" -DPIC -fPIC \"-I/home/jkeenan/var/tad/testing/perl-5.31.0/lib/5.31.0/amd64-freebsd-thread-multi/CORE\" Sysctl.c",
"rm -f blib/arch/auto/BSD/Sysctl/Sysctl.so",
"cc -shared -L/usr/local/lib -fstack-protector-strong Sysctl.o -o blib/arch/auto/BSD/Sysctl/Sysctl.so ",
"chmod 755 blib/arch/auto/BSD/Sysctl/Sysctl.so",
"\"/usr/home/jkeenan/var/tad/testing/perl-5.31.0/bin/perl\" -MExtUtils::Command::MM -e 'cp_nonempty' -- Sysctl.bs blib/arch/auto/BSD/Sysctl/Sysctl.bs 644",
"PERL_DL_NONLAZY=1 \"/usr/home/jkeenan/var/tad/testing/perl-5.31.0/bin/perl\" \"-MExtUtils::Command::MM\" \"-MTest::Harness\" \"-e\" \"undef *Test::Harness::Switches; test_harness(0, 'blib/lib', 'blib/arch')\" t/*.t",
"# platform info: release=12.0-RELEASE\0, revision=199506.",
"t/00-basic.t ..... ok",
"t/01-get.t ....... ok",
"t/02-set.t ....... ok",
"t/03-iterator.t .. ",
"Failed 14/15 subtests ",
"",
"Test Summary Report",
"-------------------",
"t/03-iterator.t (Wstat: 139 Tests: 1 Failed: 0)",
" Non-zero wait status: 139",
" Parse errors: Bad plan. You planned 15 tests but ran 1.",
"Files=4, Tests=40, 1 wallclock secs ( 0.03 usr 0.02 sys + 0.39 cusr 0.34 csys = 0.78 CPU)",
"Result: FAIL",
],
via => "App::cpanminus::reporter 0.17 (1.7044)",
}
Given that this fails against 5.31.0, it probably fails against recent production release 5.30.0 as well. Can you investigate?
Thank you very much.
Jim Keenan