zsh-workers
 help / color / mirror / code / Atom feed
From: Sebastian Gniazdowski <psprint@zdharma.org>
To: zsh-workers@zsh.org
Subject: Valgrind automatic tests, ran for almost every Zsh test and zredis
Date: Fri, 16 Jun 2017 17:14:09 +0200	[thread overview]
Message-ID: <etPan.5943f5c1.6b8b4567.367a@MacMini.local> (raw)

Hello,
managed to finish VATS, V..A.. Test Suite. It is integrated with Zsh build system. Error definition looks like this:

errors2+=( "* / zsh_main / setupvals / gettimeofday / *" )

The matching is done by a Zsh script. Rewritten python module "colour-valgrind" to Zsh, output is colored.

Ran for all tests except for V01zmodload.ztst, it produces too rich output for today. At the bottom of this email are reported leaks for other tests. VATS run looks like following:

https://asciinema.org/a/125035

The directory to be just copied to Zsh root, if accepted:

https://github.com/zdharma/VATS-zsh

Plus 2 simple configure.ac updates (patch in the repo). I must say that as Valgrind tests are adjecent to long duration, much output and a burden, with VATS, before I noticed, I was at 2/3 of the tests. It really helps. On 32-bit Linux I didn't bother to run normal tests.

I tested VATS and zredis at:

Ubuntu 14.04.4 LTS TT, 32 bit
redis-server 2.8.4, jemalloc 3.4.1
- An old machine, GCC 4.8.4, fixed pure-C and limited-/bin/sh problems, all tests and Valgrind tests pass.

OS X 10.11.5, 64 bit
redis-server 3.2.9 malloc=libc
- all tests and valgrind test pass

FreeBSD 10.3-RELEASE-p2 32 bit
redis-server 3.2.8, malloc=libc
- Zgdbm and zredis compiles. All tests pass. Valgrind always reports illegal op code, no tests ran, however VATS works fine.

I also have a general-purpose VATS project: https://github.com/psprint/VATS

============ The maybe-suspicious reports ============

A01:
==39931== 64 (24 direct, 40 indirect) bytes in 1 blocks are definitely lost in loss record 379 of 605
==39931==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==39931==    by 0x100062A05: zalloc (mem.c:966)
==39931==    by 0x10005B553: znewlinklist (linklist.c:120)
==39931==    by 0x1000511F1: addfilelist (jobs.c:1192)
==39931==    by 0x100026EDA: execpline2 (exec.c:1928)
==39931==    by 0x10001FF50: execpline (exec.c:1602)
==39931==    by 0x10001F0DD: execlist (exec.c:1360)
==39931==    by 0x10001EA2B: execode (exec.c:1141)
==39931==    by 0x100015F3E: eval (builtin.c:5809)
==39931==    by 0x10000BE5F: bin_eval (builtin.c:5995)
==39931==    by 0x100001AE9: execbuiltin (builtin.c:485)
==39931==    by 0x10002BC64: execcmd_exec (exec.c:3958)

A04:
==41041== 15 bytes in 1 blocks are definitely lost in loss record 150 of 604
==41041==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==41041==    by 0x100062A05: zalloc (mem.c:966)
==41041==    by 0x10009A270: bicat (string.c:163)
==41041==    by 0x1000B07F4: gettempname (utils.c:2158)
==41041==    by 0x1000227F4: getoutputfile (exec.c:4573)
==41041==    by 0x10009ABE1: stringsubst (subst.c:179)
==41041==    by 0x10009A541: prefork (subst.c:85)
==41041==    by 0x1000282DC: execcmd_exec (exec.c:3026)
==41041==    by 0x100026C88: execpline2 (exec.c:1873)
==41041==    by 0x10001FF50: execpline (exec.c:1602)
==41041==    by 0x10001F0DD: execlist (exec.c:1360)
==41041==    by 0x10001EA2B: execode (exec.c:1141)

A06:
==50133== 4,096 bytes in 1 blocks are definitely lost in loss record 534 of 544
==50133==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==50133==    by 0x100435AF5: __smakebuf (in /usr/lib/system/libsystem_c.dylib)
==50133==    by 0x1004396D0: __srefill0 (in /usr/lib/system/libsystem_c.dylib)
==50133==    by 0x1004397B8: __srefill (in /usr/lib/system/libsystem_c.dylib)
==50133==    by 0x10043988B: __srget (in /usr/lib/system/libsystem_c.dylib)
==50133==    by 0x1004327DD: fgetc (in /usr/lib/system/libsystem_c.dylib)
==50133==    by 0x10004D25E: shingetline (input.c:152)
==50133==    by 0x10004DB47: inputline (input.c:278)
==50133==    by 0x10004D784: ingetc (input.c:226)
==50133==    by 0x100056DE5: gettok (lex.c:611)
==50133==    by 0x100056B58: zshlex (lex.c:275)
==50133==    by 0x10007C516: parse_event (parse.c:569)

B07:
==60311== 32 bytes in 8 blocks are definitely lost in loss record 283 of 574
==60311==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==60311==    by 0x100062A05: zalloc (mem.c:966)
==60311==    by 0x100099F28: ztrdup (string.c:83)
==60311==    by 0x100048DC8: parseopts (init.c:411)
==60311==    by 0x100015968: bin_emulate (builtin.c:5908)
==60311==    by 0x100001AE9: execbuiltin (builtin.c:485)
==60311==    by 0x10002BC64: execcmd_exec (exec.c:3958)
==60311==    by 0x100026C88: execpline2 (exec.c:1873)
==60311==    by 0x10001FF50: execpline (exec.c:1602)
==60311==    by 0x10001F0DD: execlist (exec.c:1360)
==60311==    by 0x10001EA2B: execode (exec.c:1141)
==60311==    by 0x100015F3E: eval (builtin.c:5809)

C01:
==61832== 17 bytes in 1 blocks are definitely lost in loss record 180 of 592
==61832==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==61832==    by 0x100062A05: zalloc (mem.c:966)
==61832==    by 0x100099F28: ztrdup (string.c:83)
==61832==    by 0x1000623C5: lexconstant (math.c:538)
==61832==    by 0x100061093: zzlex (math.c:795)
==61832==    by 0x10005FF62: mathparse (math.c:1522)
==61832==    by 0x10005FBFB: mathevall (math.c:409)
==61832==    by 0x10005F917: matheval (math.c:1427)
==61832==    by 0x10009DB14: arithsubst (subst.c:4059)
==61832==    by 0x10009B12A: stringsubst (subst.c:293)
==61832==    by 0x10009A541: prefork (subst.c:85)
==61832==    by 0x1000282DC: execcmd_exec (exec.c:3026)

C02:
==62797== 104 (24 direct, 80 indirect) bytes in 1 blocks are definitely lost in loss record 429 of 587
==62797==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==62797==    by 0x100062A05: zalloc (mem.c:966)
==62797==    by 0x10005B553: znewlinklist (linklist.c:120)
==62797==    by 0x1000511F1: addfilelist (jobs.c:1192)
==62797==    by 0x100026EDA: execpline2 (exec.c:1928)
==62797==    by 0x10001FF50: execpline (exec.c:1602)
==62797==    by 0x10001F0DD: execlist (exec.c:1360)
==62797==    by 0x10002662C: execcursh (exec.c:428)
==62797==    by 0x10002B388: execcmd_exec (exec.c:3784)
==62797==    by 0x100026C88: execpline2 (exec.c:1873)
==62797==    by 0x10001FF50: execpline (exec.c:1602)
==62797==    by 0x10001F0DD: execlist (exec.c:1360)

C03:
==63476== 15 bytes in 1 blocks are definitely lost in loss record 147 of 581
==63476==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==63476==    by 0x100062A05: zalloc (mem.c:966)
==63476==    by 0x10009A270: bicat (string.c:163)
==63476==    by 0x1000B07F4: gettempname (utils.c:2158)
==63476==    by 0x1000227F4: getoutputfile (exec.c:4573)
==63476==    by 0x10009ABE1: stringsubst (subst.c:179)
==63476==    by 0x10009A541: prefork (subst.c:85)
==63476==    by 0x1000282DC: execcmd_exec (exec.c:3026)
==63476==    by 0x100026C88: execpline2 (exec.c:1873)
==63476==    by 0x10001FF50: execpline (exec.c:1602)
==63476==    by 0x10001F0DD: execlist (exec.c:1360)
==63476==    by 0x10001EA2B: execode (exec.c:1141)

C04:
==63900== 119 (24 direct, 95 indirect) bytes in 1 blocks are definitely lost in loss record 434 of 582
==63900==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==63900==    by 0x100062A05: zalloc (mem.c:966)
==63900==    by 0x10005B553: znewlinklist (linklist.c:120)
==63900==    by 0x1000511F1: addfilelist (jobs.c:1192)
==63900==    by 0x100022DCC: getproc (exec.c:4736)
==63900==    by 0x10009ABCB: stringsubst (subst.c:177)
==63900==    by 0x10009A541: prefork (subst.c:85)
==63900==    by 0x100021409: execsubst (exec.c:2545)
==63900==    by 0x100025EDD: execfuncdef (exec.c:5038)
==63900==    by 0x10002B239: execcmd_exec (exec.c:3770)
==63900==    by 0x100026C88: execpline2 (exec.c:1873)
==63900==    by 0x10001FF50: execpline (exec.c:1602)

D04:
==66820== 80 bytes in 5 blocks are definitely lost in loss record 436 of 615
==66820==    at 0x10010A681: malloc (in /usr/local/Cellar/valgrind/3.12.0/lib/valgrind/vgpreload_memcheck-amd64-darwin.so)
==66820==    by 0x100062A05: zalloc (mem.c:966)
==66820==    by 0x1000B633A: mkarray (utils.c:3865)
==66820==    by 0x1000A1B70: paramsubst (subst.c:3078)
==66820==    by 0x10009AF24: stringsubst (subst.c:247)
==66820==    by 0x10009A541: prefork (subst.c:85)
==66820==    by 0x1000282DC: execcmd_exec (exec.c:3026)
==66820==    by 0x100026C88: execpline2 (exec.c:1873)
==66820==    by 0x10001FF50: execpline (exec.c:1602)
==66820==    by 0x10001F0DD: execlist (exec.c:1360)
==66820==    by 0x10001EA2B: execode (exec.c:1141)
==66820==    by 0x100015F3E: eval (builtin.c:5809)


--
Sebastian Gniazdowski
psprint /at/ zdharma.org


             reply	other threads:[~2017-06-16 15:14 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-16 15:14 Sebastian Gniazdowski [this message]
2017-06-17  5:08 ` Bart Schaefer
2017-06-18 11:18   ` Sebastian Gniazdowski
2017-06-18 16:24     ` Bart Schaefer
2017-06-18 16:44       ` Sebastian Gniazdowski

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=etPan.5943f5c1.6b8b4567.367a@MacMini.local \
    --to=psprint@zdharma.org \
    --cc=zsh-workers@zsh.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/zsh/

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).