<feed xmlns='http://www.w3.org/2005/Atom'>
<title>git/t/valgrind, branch jch</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/git/git.git/
</subtitle>
<id>https://git.shady.money/git/atom?h=jch</id>
<link rel='self' href='https://git.shady.money/git/atom?h=jch'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/'/>
<updated>2023-11-11T00:21:00Z</updated>
<entry>
<title>global: convert trivial usages of `test &lt;expr&gt; -a/-o &lt;expr&gt;`</title>
<updated>2023-11-11T00:21:00Z</updated>
<author>
<name>Patrick Steinhardt</name>
<email>ps@pks.im</email>
</author>
<published>2023-11-10T10:01:15Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=13420028e5b119d27277d521f4d267212c5ca21c'/>
<id>urn:sha1:13420028e5b119d27277d521f4d267212c5ca21c</id>
<content type='text'>
Our coding guidelines say to not use `test` with `-a` and `-o` because
it can easily lead to bugs. Convert trivial cases where we still use
these to instead instead concatenate multiple invocations of `test` via
`&amp;&amp;` and `||`, respectively.

While not all of the converted instances can cause ambiguity, it is
worth getting rid of all of them regardless:

    - It becomes easier to reason about the code as we do not have to
      argue why one use of `-a`/`-o` is okay while another one isn't.

    - We don't encourage people to use these expressions.

Signed-off-by: Patrick Steinhardt &lt;ps@pks.im&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>valgrind: support test helpers</title>
<updated>2016-10-28T06:33:53Z</updated>
<author>
<name>René Scharfe</name>
<email>l.s.r@web.de</email>
</author>
<published>2016-10-27T22:14:00Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=28fab7b23d0f9f15745c99baf25ec49e38594aa5'/>
<id>urn:sha1:28fab7b23d0f9f15745c99baf25ec49e38594aa5</id>
<content type='text'>
Tests run with --valgrind call git commands through a wrapper script
that invokes valgrind on them.  This script (valgrind.sh) is in turn
invoked through symlinks created for each command in t/valgrind/bin/.

Since e6e7530d (test helpers: move test-* to t/helper/ subdirectory)
these symlinks have been broken for test helpers -- they point to the
old locations in the root of the build directory.  Fix that by teaching
the code for creating the links about the new location of the binaries,
and do the same in the wrapper script to allow it to find its payload.

Signed-off-by: Rene Scharfe &lt;l.s.r@web.de&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Revert "Merge branch 'dt/refs-check-refname-component-sse'"</title>
<updated>2014-07-28T17:41:53Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-07-28T17:41:53Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5e6502288d713cfa673c456a040ad0841db11dfa'/>
<id>urn:sha1:5e6502288d713cfa673c456a040ad0841db11dfa</id>
<content type='text'>
This reverts commit 6f92e5ff3cdc813de8ef5327fd4bad492fb7d6c9, reversing
changes made to a02ad882a17b9d45f63ea448391ac5e9f7948222.
</content>
</entry>
<entry>
<title>Revert "Merge branch 'dt/refs-check-refname-component-sse-fix'"</title>
<updated>2014-07-28T17:41:16Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2014-07-28T17:41:16Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=dad2e7f4bf6e2f01bf2b589490441343a0f8f6f7'/>
<id>urn:sha1:dad2e7f4bf6e2f01bf2b589490441343a0f8f6f7</id>
<content type='text'>
This reverts commit 779c99fd68dcdaff7d996a1985914154a36a272c, reversing
changes made to df4d7d56461c19361a6f32b633e850c7ba6e55e6.
</content>
</entry>
<entry>
<title>refs: fix valgrind suppression file</title>
<updated>2014-07-08T19:56:39Z</updated>
<author>
<name>David Turner</name>
<email>dturner@twopensource.com</email>
</author>
<published>2014-07-04T20:24:01Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=a8d9fea772ca49c23ca3ee3d7625b9d1ed94f87f'/>
<id>urn:sha1:a8d9fea772ca49c23ca3ee3d7625b9d1ed94f87f</id>
<content type='text'>
Add all of the ways in which check_refname_format violates valgrind's
expectations to the valgrind suppression file; remove an assumption about
the call chain of check_refname_format from same.

Signed-off-by: David Turner &lt;dturner@twitter.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>refs.c: SSE2 optimizations for check_refname_component</title>
<updated>2014-06-18T17:57:18Z</updated>
<author>
<name>David Turner</name>
<email>dturner@twopensource.com</email>
</author>
<published>2014-06-18T05:54:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=745224e04a03e4544c58d5d38d3c54f67100f8eb'/>
<id>urn:sha1:745224e04a03e4544c58d5d38d3c54f67100f8eb</id>
<content type='text'>
Optimize check_refname_component using SSE2 on x86_64.

git rev-parse HEAD is a good test-case for this, since it does almost
nothing except parse refs.  For one particular repo with about 60k
refs, almost all packed, the timings are:

Look up table: 29 ms
SSE2:          23 ms

This cuts about 20% off of the runtime.

Ondřej Bílka &lt;neleai@seznam.cz&gt; suggested an SSE2 approach to the
substring searches, which netted a speed boost over the SSE4.2 code I
had initially written.

Signed-off-by: David Turner &lt;dturner@twitter.com&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'tr/test-v-and-v-subtest-only'</title>
<updated>2013-07-05T08:15:48Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-07-05T08:15:48Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=04f2ddda8426d3ae46d52d9dcbfc00bd3c52e645'/>
<id>urn:sha1:04f2ddda8426d3ae46d52d9dcbfc00bd3c52e645</id>
<content type='text'>
Allows N instances of tests run in parallel, each running 1/N parts
of the test suite under Valgrind, to speed things up.

* tr/test-v-and-v-subtest-only:
  perf-lib: fix start/stop of perf tests
  test-lib: support running tests under valgrind in parallel
  test-lib: allow prefixing a custom string before "ok N" etc.
  test-lib: valgrind for only tests matching a pattern
  test-lib: verbose mode for only tests matching a pattern
  test-lib: self-test that --verbose works
  test-lib: rearrange start/end of test_expect_* and test_skip
  test-lib: refactor $GIT_SKIP_TESTS matching
  test-lib: enable MALLOC_* for the actual tests
</content>
</entry>
<entry>
<title>test-lib: valgrind for only tests matching a pattern</title>
<updated>2013-06-23T19:24:06Z</updated>
<author>
<name>Thomas Rast</name>
<email>trast@inf.ethz.ch</email>
</author>
<published>2013-06-23T18:12:57Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=5dfc368f5ec4c448cf3c76908b4c0e77cb4b902a'/>
<id>urn:sha1:5dfc368f5ec4c448cf3c76908b4c0e77cb4b902a</id>
<content type='text'>
With the new --valgrind-only=&lt;pattern&gt; option, one can enable
--valgrind at a per-test granularity, exactly analogous to
--verbose-only from the previous commit.

The options are wired such that --valgrind implies --verbose (as
before), but --valgrind-only=&lt;pattern&gt; implies
--verbose-only=&lt;pattern&gt; unless --verbose is also in effect.

Signed-off-by: Thomas Rast &lt;trast@inf.ethz.ch&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
<entry>
<title>Merge branch 'jk/test-output'</title>
<updated>2013-05-29T21:29:11Z</updated>
<author>
<name>Junio C Hamano</name>
<email>gitster@pobox.com</email>
</author>
<published>2013-05-29T21:29:11Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=31d176d08383012f9cbd040636151e22724b5ee7'/>
<id>urn:sha1:31d176d08383012f9cbd040636151e22724b5ee7</id>
<content type='text'>
When TEST_OUTPUT_DIRECTORY setting is used, it was handled somewhat
inconsistently between the test framework and t/Makefile, and logic
to summarize the results looked at a wrong place.

* jk/test-output:
  t/Makefile: don't define TEST_RESULTS_DIRECTORY recursively
  test output: respect $TEST_OUTPUT_DIRECTORY
  t/Makefile: fix result handling with TEST_OUTPUT_DIRECTORY
</content>
</entry>
<entry>
<title>test output: respect $TEST_OUTPUT_DIRECTORY</title>
<updated>2013-04-29T18:26:23Z</updated>
<author>
<name>John Keeping</name>
<email>john@keeping.me.uk</email>
</author>
<published>2013-04-29T18:16:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/git/commit/?id=2d14e13c56a407eea6084ff2d5713a8d23d337f5'/>
<id>urn:sha1:2d14e13c56a407eea6084ff2d5713a8d23d337f5</id>
<content type='text'>
Most test results go in $TEST_OUTPUT_DIRECTORY, but the output files for
tests run with --tee or --valgrind just use bare "test-results".
Changes these so that they do respect $TEST_OUTPUT_DIRECTORY.

As a result of this, the valgrind/analyze.sh script may no longer
inspect the correct files so it is also updated to respect
$TEST_OUTPUT_DIRECTORY by adding it to GIT-BUILD-OPTIONS.  This may be a
regression for people who have TEST_OUTPUT_DIRECTORY in their config.mak
but want to override it in the environment, but this change merely
brings it into line with GIT_TEST_OPTS which already cannot be
overridden if it is specified in config.mak.

Signed-off-by: John Keeping &lt;john@keeping.me.uk&gt;
Signed-off-by: Junio C Hamano &lt;gitster@pobox.com&gt;
</content>
</entry>
</feed>
