Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make test.valgrind doesn't work on cpan, dist, ext #15947

Closed
p5pRT opened this issue Apr 11, 2017 · 8 comments
Closed

make test.valgrind doesn't work on cpan, dist, ext #15947

p5pRT opened this issue Apr 11, 2017 · 8 comments

Comments

@p5pRT
Copy link

@p5pRT p5pRT commented Apr 11, 2017

Migrated from rt.perl.org#131135 (status was 'resolved')

Searchable as RT131135$

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Apr 11, 2017

From @khwilliamson

This is a bug report for perl from khw@​khw.(none),
generated with the help of perlbug 1.40 running under perl 5.26.0.


make test.valgrind immediately fails on things outside t and lib. I've
known this for some time, but I really needed to run these, so I did a
little debugging. The problem stems from these lines in t/TEST, added
in be075ca​:

  if ($options->{run_dir}) {
  $Valgrind_Log = "$options->{run_dir}/$Valgrind_Log";
  }

To give an example, the run_dir for ext/foo ends up being "../ext/foo",
and these three lines change the log file to

  ../ext/foo/../ext/foo/log-file

The directory doesn't exist because it would need to be

  ../ext/foo/../../ext/foo

Commenting out the 3 lines causes the tests to run, but empty log files
are left around, and the count of non-empty (real problem) files is
messed up.

There were 6 problem files. I will file tickets for those.

If I comment out those lines, and let the log-file be in the cwd, the
tests run, but the empty ones don't get deleted at the end, and the
count of the non-empty ones doesn't get updated, and it looks like they
are supposed to get renamed, but that doesn't seem to be happening



Flags​:
  category=core
  severity=low


Site configuration information for perl 5.26.0​:

Configured by khw at Mon Apr 10 08​:46​:47 MDT 2017.

Summary of my perl5 (revision 5 version 26 subversion 0) configuration​:
  Commit id​: b57dd50
  Platform​:
  osname=linux
  osvers=4.4.0-72-generic
  archname=x86_64-linux-thread-multi-ld
  uname='linux khw 4.4.0-72-generic #93-ubuntu smp fri mar 31
14​:07​:41 utc 2017 x86_64 x86_64 x86_64 gnulinux '
  config_args='-des -Uversiononly -Dprefix=/home/khw/blead -Dusedevel
-D'optimize=-ggdb3' -A'optimize=-ggdb3' -A'optimize=-O0'
-Accflags='-DPERL_BOOL_AS_CHAR' -Accflags='-DPERL_EXTERNAL_GLOB'
-Dman1dir=none -Dman3dir=none -Dcc=g++ -DDEBUGGING -Dusemorebits
-Dusecbacktrace -Dusethreads'
  hint=recommended
  useposix=true
  d_sigaction=define
  useithreads=define
  usemultiplicity=define
  use64bitint=define
  use64bitall=define
  uselongdouble=define
  usemymalloc=n
  default_inc_excludes_dot=define
  bincompat5005=undef
  Compiler​:
  cc='g++'
  ccflags ='-D_REENTRANT -D_GNU_SOURCE -DPERL_BOOL_AS_CHAR
-DPERL_EXTERNAL_GLOB -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe
-fstack-protector-strong -I/usr/local/include -DUSE_C_BACKTRACE -g
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2'
  optimize='-ggdb3 -ggdb3 -O0'
  cppflags='-D_REENTRANT -D_GNU_SOURCE -DPERL_BOOL_AS_CHAR
-DPERL_EXTERNAL_GLOB -fwrapv -DDEBUGGING -fno-strict-aliasing -pipe
-fstack-protector-strong -I/usr/local/include'
  ccversion=''
  gccversion='5.4.0 20160609'
  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='long double'
  nvsize=16
  Off_t='off_t'
  lseeksize=8
  alignbytes=16
  prototype=define
  Linker and Libraries​:
  ld='g++'
  ldflags =' -fstack-protector-strong -L/usr/local/lib'
  libpth=/usr/include/c++/5 /usr/include/x86_64-linux-gnu/c++/5
/usr/include/c++/5/backward /usr/local/lib
/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed
/usr/include/x86_64-linux-gnu /usr/lib /lib/x86_64-linux-gnu /lib/../lib
/usr/lib/x86_64-linux-gnu /usr/lib/../lib /lib
  libs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  perllibs=-lpthread -lnsl -ldl -lm -lcrypt -lutil -lc
  libc=libc-2.23.so
  so=so
  useshrplib=false
  libperl=libperl.a
  gnulibc_version='2.23'
  Dynamic Linking​:
  dlsrc=dl_dlopen.xs
  dlext=so
  d_dlsymun=undef
  ccdlflags='-Wl,-E'
  cccdlflags='-fPIC'
  lddlflags='-shared -ggdb3 -ggdb3 -O0 -L/usr/local/lib
-fstack-protector-strong'


@​INC for perl 5.26.0​:
  /home/khw/perl/blead/lib
  /home/khw/perl/blead/t
  /home/khw/blead/lib/perl5/site_perl/5.26.0/x86_64-linux-thread-multi-ld
  /home/khw/blead/lib/perl5/site_perl/5.26.0
  /home/khw/blead/lib/perl5/5.26.0/x86_64-linux-thread-multi-ld
  /home/khw/blead/lib/perl5/5.26.0
  /home/khw/blead/lib/perl5/site_perl/5.25.11
  /home/khw/blead/lib/perl5/site_perl/5.25.10
  /home/khw/blead/lib/perl5/site_perl/5.25.9
  /home/khw/blead/lib/perl5/site_perl/5.25.8
  /home/khw/blead/lib/perl5/site_perl/5.25.7
  /home/khw/blead/lib/perl5/site_perl/5.25.6
  /home/khw/blead/lib/perl5/site_perl/5.25.5
  /home/khw/blead/lib/perl5/site_perl/5.25.4
  /home/khw/blead/lib/perl5/site_perl/5.25.3
  /home/khw/blead/lib/perl5/site_perl/5.25.2
  /home/khw/blead/lib/perl5/site_perl/5.25.1
  /home/khw/blead/lib/perl5/site_perl/5.24.0
  /home/khw/blead/lib/perl5/site_perl/5.23.10
  /home/khw/blead/lib/perl5/site_perl/5.23.9
  /home/khw/blead/lib/perl5/site_perl/5.23.8
  /home/khw/blead/lib/perl5/site_perl/5.23.7
  /home/khw/blead/lib/perl5/site_perl/5.23.6
  /home/khw/blead/lib/perl5/site_perl/5.23.5
  /home/khw/blead/lib/perl5/site_perl/5.23.4
  /home/khw/blead/lib/perl5/site_perl/5.23.3
  /home/khw/blead/lib/perl5/site_perl/5.23.2
  /home/khw/blead/lib/perl5/site_perl/5.23.1
  /home/khw/blead/lib/perl5/site_perl/5.23.0
  /home/khw/blead/lib/perl5/site_perl/5.22.0
  /home/khw/blead/lib/perl5/site_perl/5.21.12
  /home/khw/blead/lib/perl5/site_perl/5.21.11
  /home/khw/blead/lib/perl5/site_perl/5.21.10
  /home/khw/blead/lib/perl5/site_perl/5.21.9
  /home/khw/blead/lib/perl5/site_perl/5.21.8
  /home/khw/blead/lib/perl5/site_perl/5.21.7
  /home/khw/blead/lib/perl5/site_perl/5.21.6
  /home/khw/blead/lib/perl5/site_perl/5.21.5
  /home/khw/blead/lib/perl5/site_perl/5.21.4
  /home/khw/blead/lib/perl5/site_perl/5.21.3
  /home/khw/blead/lib/perl5/site_perl/5.21.2
  /home/khw/blead/lib/perl5/site_perl/5.21.1
  /home/khw/blead/lib/perl5/site_perl/5.20.0
  /home/khw/blead/lib/perl5/site_perl/5.19.12
  /home/khw/blead/lib/perl5/site_perl/5.19.11
  /home/khw/blead/lib/perl5/site_perl/5.19.10
  /home/khw/blead/lib/perl5/site_perl


Environment for perl 5.26.0​:
  HOME=/home/khw
  LANG=en_US.UTF-8
  LANGUAGE=en_US
  LD_LIBRARY_PATH (unset)
  LOGDIR (unset)

PATH=/usr/lib/ccache​:/home/khw/bin​:/home/khw/perl5/perlbrew/bin​:/home/khw/print/bin​:/bin​:/usr/local/sbin​:/usr/local/bin​:/usr/sbin​:/usr/bin​:/sbin​:/usr/games​:/usr/local/games​:/home/khw/iands/www​:/home/khw/cxoffice/bin
  PERL5OPT=-w
  PERL_BADLANG (unset)
  PERL_DIFF_TOOL=wgdiff
  PERL_POD_PEDANTIC=1
  SHELL=/bin/ksh

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Jun 13, 2017

From @jkeenan

On Tue, 11 Apr 2017 16​:26​:21 GMT, public@​khwilliamson.com wrote​:

This is a bug report for perl from khw@​khw.(none),
generated with the help of perlbug 1.40 running under perl 5.26.0.

-----------------------------------------------------------------
make test.valgrind immediately fails on things outside t and lib.
I've
known this for some time, but I really needed to run these, so I did a
little debugging. The problem stems from these lines in t/TEST, added
in be075ca​:

if ($options->{run_dir}) {
$Valgrind_Log = "$options->{run_dir}/$Valgrind_Log";
}

Matt H​: This was your commit back in 2014. Can you take a look at this?

To give an example, the run_dir for ext/foo ends up being
"../ext/foo",
and these three lines change the log file to

../ext/foo/../ext/foo/log-file

The directory doesn't exist because it would need to be

../ext/foo/../../ext/foo

Commenting out the 3 lines causes the tests to run, but empty log
files
are left around, and the count of non-empty (real problem) files is
messed up.

There were 6 problem files. I will file tickets for those.

Karl, have you filed those tickets?

If I comment out those lines, and let the log-file be in the cwd, the
tests run, but the empty ones don't get deleted at the end, and the
count of the non-empty ones doesn't get updated, and it looks like
they
are supposed to get renamed, but that doesn't seem to be happening

What would be the next steps for this RT?

Thank you very much.

--
James E Keenan (jkeenan@​cpan.org)

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Jun 13, 2017

The RT System itself - Status changed from 'new' to 'open'

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Mar 14, 2018

From @khwilliamson

On Tue, 13 Jun 2017 12​:12​:07 -0700, jkeenan wrote​:

On Tue, 11 Apr 2017 16​:26​:21 GMT, public@​khwilliamson.com wrote​:

This is a bug report for perl from khw@​khw.(none),
generated with the help of perlbug 1.40 running under perl 5.26.0.

-----------------------------------------------------------------
make test.valgrind immediately fails on things outside t and lib.
I've
known this for some time, but I really needed to run these, so I did a
little debugging. The problem stems from these lines in t/TEST, added
in be075ca​:

if ($options->{run_dir}) {
$Valgrind_Log = "$options->{run_dir}/$Valgrind_Log";
}

Matt H​: This was your commit back in 2014. Can you take a look at this?

To give an example, the run_dir for ext/foo ends up being
"../ext/foo",
and these three lines change the log file to

../ext/foo/../ext/foo/log-file

The directory doesn't exist because it would need to be

../ext/foo/../../ext/foo

Commenting out the 3 lines causes the tests to run, but empty log
files
are left around, and the count of non-empty (real problem) files is
messed up.

There were 6 problem files. I will file tickets for those.

Karl, have you filed those tickets?

If I comment out those lines, and let the log-file be in the cwd, the
tests run, but the empty ones don't get deleted at the end, and the
count of the non-empty ones doesn't get updated, and it looks like
they
are supposed to get renamed, but that doesn't seem to be happening

What would be the next steps for this RT?

Thank you very much.

Just an update​: Commit 7ab0d5f
fixed things so make test.valgrind is now usable. It leaves
zero length files around that confuse things unless removed, which a
find(1) command can do.
0
--
Karl Williamson

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Mar 29, 2019

From @khwilliamson

This was fixed by
commit 0d40ea5
Author​: Karl Williamson <khw@​cpan.org>
Date​: Sat Mar 23 21​:29​:51 2019 -0600

  Remove zero length valgrind files at end.
--
Karl Williamson

@p5pRT
Copy link
Author

@p5pRT p5pRT commented Mar 29, 2019

@khwilliamson - Status changed from 'open' to 'pending release'

@p5pRT
Copy link
Author

@p5pRT p5pRT commented May 22, 2019

From @khwilliamson

Thank you for filing this report. You have helped make Perl better.

With the release today of Perl 5.30.0, this and 160 other issues have been
resolved.

Perl 5.30.0 may be downloaded via​:
https://metacpan.org/release/XSAWYERX/perl-5.30.0

If you find that the problem persists, feel free to reopen this ticket.

@p5pRT
Copy link
Author

@p5pRT p5pRT commented May 22, 2019

@khwilliamson - Status changed from 'pending release' to 'resolved'

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant