git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
* [PATCH 00/24] revision.[ch]: add and use release_revisions()
@ 2022-03-09 13:16 Ævar Arnfjörð Bjarmason
  2022-03-09 13:16 ` [PATCH 01/24] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
                   ` (25 more replies)
  0 siblings, 26 replies; 252+ messages in thread
From: Ævar Arnfjörð Bjarmason @ 2022-03-09 13:16 UTC (permalink / raw)
  To: git
  Cc: Junio C Hamano, Martin Ågren, Elijah Newren, Derrick Stolee,
	Ævar Arnfjörð Bjarmason

== For Junio ==

This has a trivially resolved conflict with Derrick Stolee's
aaf251cdc5c (revision: put object filter into struct rev_info,
2022-03-08) currently in "seen" in builtin/rev-list.c.

The resolution is to just keep the "goto cleanup" in place of "return
0" in the conflicting lines, but to otherwise keep Derrick's version.

It will pass with/without SANITIZE=leak when applied to both "master"
and "seen". I omitted one test change (described in a relevant commit
message) due to the latter not being true (no fault of "seen", just a
new leaking command being added to a test).

== Summary ==

Ever since we started running regular leak testing in CI with
956d2e4639b (tests: add a test mode for SANITIZE=leak, run it in CI,
2021-09-23) a major roadblock for making headway in marking tests as
leak-free has been the leaks in the revision.[ch] API.

Since we use it for an revision walking, including "log", "rev-list"
etc. we haven't been able to run common test setup in many cases
without dying when compiled with SANITIZE=leak, and cases where we
genuinely leak memory are often obscured by several concurrent leaks
in the revisions API.

This series adds a release_revisions() and works towards fixing those
memory leaks one at a time. As the diffstat to t/* shows we can mark a
*lot* of tests leak-free as a result, and those are only the the tests
that 100% pass with this series.

An approximate count of the total number of memory leaks in the test
suite (approximate because some are "hidden" due to SANITIZE=leak
causing "git" to die) is, before this series (running with "--tee" and
"--verbose-log"):

    $ grep -a "SUMMARY: LeakSanitizer.*leaked in .*allocation" test-results/*.out|wc -l
    12032

After:

    $ grep -a "SUMMARY: LeakSanitizer.*leaked in .*allocation" test-results/*.out|wc -l
    6652

I.e. this recudes the number of times "git" dies due to having any of
N number of leaks by around half, and that's severely undercounting
the amount of individual memory leaks.

This is a rather large series, but it should be fairly easy to
review. I've leaned towards splitting commits up for ease of review,
such that when there's repetitive changes (e.g. additions of
release_revisions()) that they're split such that each commit has
hunks that make the same sort of change, whenever possible.

All of the changes to "t/*" are then just adding
"TEST_PASSES_SANITIZE_LEAK=true" lines as we go along.

This doesn't fix all of the leaks in the revision.[ch] API. In
particular there's harder edge cases where the ownership of a struct
member isn't very straightforward (sometimes revision.c will allocate
it, sometimes not). This does fix all of the common cases though, and
what's left is best suited for a follow-up series.

Ævar Arnfjörð Bjarmason (24):
  t/helper/test-fast-rebase.c: don't leak "struct strbuf"
  blame: use "goto cleanup" for cleanup_scoreboard()
  format-patch: don't leak "extra_headers" or "ref_message_ids"
  revision.[ch]: split freeing of revs->commit into a function
  revision.[ch]: provide and start using a release_revisions()
  revisions API users: add straightforward release_revisions()
  revisions API users: use release_revisions() needing "{ 0 }" init
  revisions API users: add "goto cleanup" for release_revisions()
  revisions API users: use release_revisions() in http-push.c
  revisions API users: use release_revisions() in builtin/log.c
  revisions API users: use release_revisions() with UNLEAK()
  revisions API users: use release_revisions() in submodule.c edge case
  revisions API users: use release_revisions() in wt-status.c edge case
  revisions API users: use release_revisions() for "prune_data" users
  revisions API: have release_revisions() release "commits"
  revisions API: have release_revisions() release "mailmap"
  revisions API: have release_revisions() release "cmdline"
  revisions API: have release_revisions() release "grep_filter"
  revisions API: have release_revisions() release "prune_data"
  revisions API: clear "boundary_commits" in release_revisions()
  revisions API: release "reflog_info" in release revisions()
  revisions API: call diff_free(&revs->pruning) in revisions_release()
  revisions API: have release_revisions() release "date_mode"
  revisions API: have release_revisions() release "topo_walk_info"

 add-interactive.c                             |  3 +-
 bisect.c                                      | 20 ++++--
 builtin/add.c                                 |  3 +-
 builtin/am.c                                  |  3 +
 builtin/bisect--helper.c                      |  2 +
 builtin/blame.c                               |  4 +-
 builtin/checkout.c                            |  3 +-
 builtin/commit.c                              |  7 +-
 builtin/describe.c                            |  2 +
 builtin/diff-files.c                          |  8 ++-
 builtin/diff-index.c                          |  5 +-
 builtin/diff.c                                |  2 +-
 builtin/fast-export.c                         |  1 +
 builtin/log.c                                 | 35 +++++++---
 builtin/merge.c                               |  2 +
 builtin/pack-objects.c                        |  2 +
 builtin/prune.c                               |  1 +
 builtin/reflog.c                              |  1 +
 builtin/rev-list.c                            | 19 +++--
 builtin/shortlog.c                            |  2 +
 builtin/stash.c                               | 20 +++---
 builtin/submodule--helper.c                   | 15 ++--
 bundle.c                                      | 12 ++--
 diff-lib.c                                    |  8 ++-
 fmt-merge-msg.c                               |  1 +
 http-push.c                                   |  3 +-
 merge-ort.c                                   |  1 +
 merge-recursive.c                             |  1 +
 midx.c                                        |  1 +
 pack-bitmap-write.c                           |  1 +
 range-diff.c                                  |  2 +-
 ref-filter.c                                  |  1 +
 reflog-walk.c                                 | 26 ++++++-
 reflog-walk.h                                 |  1 +
 remote.c                                      |  1 +
 revision.c                                    | 69 ++++++++++++++++---
 revision.h                                    |  6 ++
 sequencer.c                                   | 26 +++++--
 shallow.c                                     |  1 +
 submodule.c                                   |  5 +-
 t/helper/test-fast-rebase.c                   | 22 ++++--
 t/helper/test-revision-walking.c              |  1 +
 t/lib-git-svn.sh                              |  4 ++
 t/t0056-git-C.sh                              |  1 +
 t/t0062-revision-walking.sh                   |  1 +
 t/t0100-previous.sh                           |  1 +
 t/t0101-at-syntax.sh                          |  2 +
 t/t1060-object-corruption.sh                  |  2 +
 t/t1401-symbolic-ref.sh                       |  2 +
 t/t1411-reflog-show.sh                        |  1 +
 t/t1412-reflog-loop.sh                        |  2 +
 t/t1415-worktree-refs.sh                      |  1 +
 t/t2015-checkout-unborn.sh                    |  1 +
 t/t2016-checkout-patch.sh                     |  1 +
 t/t3408-rebase-multi-line.sh                  |  1 +
 t/t4021-format-patch-numbered.sh              |  1 +
 t/t4028-format-patch-mime-headers.sh          |  2 +
 t/t4036-format-patch-signer-mime.sh           |  1 +
 t/t4039-diff-assume-unchanged.sh              |  1 +
 t/t4055-diff-context.sh                       |  1 +
 t/t4066-diff-emit-delay.sh                    |  1 +
 t/t4122-apply-symlink-inside.sh               |  1 +
 t/t4126-apply-empty.sh                        |  1 -
 t/t4206-log-follow-harder-copies.sh           |  2 +
 t/t4207-log-decoration-colors.sh              |  1 +
 t/t4212-log-corrupt.sh                        |  1 +
 t/t5313-pack-bounds-checks.sh                 |  2 +
 t/t5322-pack-objects-sparse.sh                |  1 +
 t/t5506-remote-groups.sh                      |  1 +
 t/t5513-fetch-track.sh                        |  1 +
 t/t5515-fetch-merge-logic.sh                  |  1 +
 t/t5518-fetch-exit-status.sh                  |  1 +
 t/t5532-fetch-proxy.sh                        |  2 +
 t/t5900-repo-selection.sh                     |  2 +
 t/t6002-rev-list-bisect.sh                    |  1 +
 t/t6003-rev-list-topo-order.sh                |  1 +
 t/t6018-rev-list-glob.sh                      |  1 +
 t/t6019-rev-list-ancestry-path.sh             |  1 +
 t/t6100-rev-list-in-order.sh                  |  1 +
 t/t6101-rev-parse-parents.sh                  |  1 +
 t/t6110-rev-list-sparse.sh                    |  1 +
 t/t6114-keep-packs.sh                         |  2 +
 t/t6131-pathspec-icase.sh                     |  2 +
 t/t7008-filter-branch-null-sha1.sh            |  2 +
 t/t7702-repack-cyclic-alternate.sh            |  2 +
 t/t9001-send-email.sh                         |  1 +
 t/t9100-git-svn-basic.sh                      |  1 +
 t/t9101-git-svn-props.sh                      |  2 +
 t/t9104-git-svn-follow-parent.sh              |  2 +
 t/t9106-git-svn-commit-diff-clobber.sh        |  2 +
 t/t9122-git-svn-author.sh                     |  2 +
 t/t9129-git-svn-i18n-commitencoding.sh        |  1 +
 t/t9139-git-svn-non-utf8-commitencoding.sh    |  1 +
 t/t9148-git-svn-propset.sh                    |  1 +
 t/t9151-svn-mergeinfo.sh                      |  1 +
 t/t9157-git-svn-fetch-merge.sh                |  2 +
 t/t9159-git-svn-no-parent-mergeinfo.sh        |  2 +
 t/t9161-git-svn-mergeinfo-push.sh             |  1 +
 t/t9162-git-svn-dcommit-interactive.sh        |  2 +
 t/t9163-git-svn-reset-clears-caches.sh        |  1 +
 ...65-git-svn-fetch-merge-branch-of-branch.sh |  2 +
 ...6-git-svn-fetch-merge-branch-of-branch2.sh |  2 +
 wt-status.c                                   | 15 ++--
 103 files changed, 359 insertions(+), 90 deletions(-)

-- 
2.35.1.1295.g6b025d3e231


^ permalink raw reply	[flat|nested] 252+ messages in thread

end of thread, other threads:[~2022-07-12  7:04 UTC | newest]

Thread overview: 252+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-03-09 13:16 [PATCH 00/24] revision.[ch]: add and use release_revisions() Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 01/24] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 02/24] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 03/24] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-03-09 20:34   ` Taylor Blau
2022-03-09 13:16 ` [PATCH 04/24] revision.[ch]: split freeing of revs->commit into a function Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 05/24] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-03-09 21:32   ` Taylor Blau
2022-03-09 22:57   ` Junio C Hamano
2022-03-10  0:28     ` Ævar Arnfjörð Bjarmason
2022-03-10  1:11       ` Junio C Hamano
2022-03-10 14:57         ` Ævar Arnfjörð Bjarmason
2022-03-10 14:56       ` Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 06/24] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 07/24] revisions API users: use release_revisions() needing "{ 0 }" init Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 08/24] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-03-09 19:08   ` Derrick Stolee
2022-03-09 13:16 ` [PATCH 09/24] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 10/24] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-03-09 19:12   ` Derrick Stolee
2022-03-09 21:58     ` Taylor Blau
2022-03-09 21:53   ` Taylor Blau
2022-03-09 13:16 ` [PATCH 11/24] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 12/24] revisions API users: use release_revisions() in submodule.c edge case Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 13/24] revisions API users: use release_revisions() in wt-status.c " Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 14/24] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 15/24] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 16/24] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-03-09 19:17   ` Derrick Stolee
2022-03-09 13:16 ` [PATCH 17/24] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-03-09 19:19   ` Derrick Stolee
2022-03-10 15:10     ` Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 18/24] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 19/24] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 20/24] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-03-09 19:21   ` Derrick Stolee
2022-03-10 14:55     ` Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 21/24] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-03-09 19:24   ` Derrick Stolee
2022-03-10  0:13     ` Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 22/24] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 23/24] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-03-09 13:16 ` [PATCH 24/24] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-03-09 19:27   ` Derrick Stolee
2022-03-09 14:34 ` [PATCH 00/24] revision.[ch]: add and use release_revisions() Derrick Stolee
2022-03-09 19:30   ` Derrick Stolee
2022-03-09 19:39     ` Ævar Arnfjörð Bjarmason
2022-03-09 20:05   ` Junio C Hamano
2022-03-23 20:31 ` [PATCH v2 00/27] " Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 01/27] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-03-24  4:13     ` Junio C Hamano
2022-03-24 16:57       ` Ævar Arnfjörð Bjarmason
2022-03-24 17:34         ` Junio C Hamano
2022-03-23 20:31   ` [PATCH v2 02/27] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-03-24  4:23     ` Junio C Hamano
2022-03-23 20:31   ` [PATCH v2 03/27] string_list API users: use string_list_init_{no,}dup Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 04/27] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-03-24  4:33     ` Junio C Hamano
2022-03-24 16:59       ` Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 05/27] revision.[ch]: split freeing of revs->commit into a function Ævar Arnfjörð Bjarmason
2022-03-24  4:33     ` Junio C Hamano
2022-03-24 17:01       ` Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 06/27] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-03-24  4:43     ` Junio C Hamano
2022-03-24 17:02       ` Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 07/27] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-03-23 20:31   ` [PATCH v2 08/27] revisions API users: use release_revisions() needing "{ 0 }" init Ævar Arnfjörð Bjarmason
2022-03-24  4:53     ` Junio C Hamano
2022-03-24 17:04       ` Ævar Arnfjörð Bjarmason
2022-03-24 17:39         ` Junio C Hamano
2022-03-25  0:47           ` Junio C Hamano
2022-03-23 20:31   ` [PATCH v2 09/27] stash: always have the owner of "stash_info" free it Ævar Arnfjörð Bjarmason
2022-03-25  0:51     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 10/27] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-03-25  0:52     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 11/27] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 12/27] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-03-25  1:03     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 13/27] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 14/27] revisions API users: use release_revisions() in submodule.c edge case Ævar Arnfjörð Bjarmason
2022-03-25  1:07     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 15/27] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 16/27] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 17/27] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-03-25  1:11     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 18/27] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-03-25  1:16     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 19/27] revisions API: have release_revisions() release "filter" Ævar Arnfjörð Bjarmason
2022-03-25  1:17     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 20/27] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 21/27] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-03-25  1:20     ` Junio C Hamano
2022-03-23 20:32   ` [PATCH v2 22/27] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 23/27] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 24/27] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 25/27] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 26/27] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-03-23 20:32   ` [PATCH v2 27/27] revisions API: add a TODO for diff_free(&revs->diffopt) Ævar Arnfjörð Bjarmason
2022-03-25  1:41   ` [PATCH v2 00/27] revision.[ch]: add and use release_revisions() Junio C Hamano
2022-03-25  9:14     ` Ævar Arnfjörð Bjarmason
2022-03-25 17:18   ` [PATCH v3 " Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 01/27] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 02/27] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 03/27] string_list API users: use string_list_init_{no,}dup Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 04/27] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 05/27] revision.[ch]: split freeing of revs->commit into a function Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 06/27] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 07/27] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 08/27] revisions API users: add "goto cleanup" for "rev_info" early exit Ævar Arnfjörð Bjarmason
2022-03-25 20:30       ` Junio C Hamano
2022-03-26  0:37         ` Ævar Arnfjörð Bjarmason
2022-03-26  5:24           ` Junio C Hamano
2022-03-28 17:55             ` Derrick Stolee
2022-03-28 18:55               ` Ævar Arnfjörð Bjarmason
2022-03-28 20:03                 ` Junio C Hamano
2022-03-25 17:18     ` [PATCH v3 09/27] revisions API users: use release_revisions() in submodule.c edge case Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 10/27] stash: always have the owner of "stash_info" free it Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 11/27] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 12/27] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 13/27] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 14/27] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 15/27] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 16/27] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 17/27] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 18/27] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 19/27] revisions API: have release_revisions() release "filter" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 20/27] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 21/27] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 22/27] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 23/27] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 24/27] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 25/27] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 26/27] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-03-25 17:18     ` [PATCH v3 27/27] revisions API: add a TODO for diff_free(&revs->diffopt) Ævar Arnfjörð Bjarmason
2022-03-31  1:11     ` [PATCH v4 00/27] revision.[ch]: add and use release_revisions() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 01/27] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 02/27] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 03/27] string_list API users: use string_list_init_{no,}dup Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 04/27] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-04-01 15:13         ` Phillip Wood
2022-04-01 17:16           ` Ævar Arnfjörð Bjarmason
2022-04-01 19:32             ` Junio C Hamano
2022-03-31  1:11       ` [PATCH v4 05/27] revision.[ch]: split freeing of revs->commit into a function Ævar Arnfjörð Bjarmason
2022-04-01 15:15         ` Phillip Wood
2022-04-01 17:03           ` Junio C Hamano
2022-03-31  1:11       ` [PATCH v4 06/27] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-04-01 15:17         ` Phillip Wood
2022-04-01 17:25           ` Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 07/27] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 08/27] revision.[ch]: document and move code declared around "init" Ævar Arnfjörð Bjarmason
2022-04-01 15:20         ` Phillip Wood
2022-03-31  1:11       ` [PATCH v4 09/27] revisions API users: use release_revisions() needing REV_INFO_INIT Ævar Arnfjörð Bjarmason
2022-03-31 21:14         ` Junio C Hamano
2022-04-01 10:31           ` Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 10/27] stash: always have the owner of "stash_info" free it Ævar Arnfjörð Bjarmason
2022-04-01 15:29         ` Phillip Wood
2022-04-01 17:29           ` Ævar Arnfjörð Bjarmason
2022-04-01 15:33         ` Phillip Wood
2022-03-31  1:11       ` [PATCH v4 11/27] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 12/27] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 13/27] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-04-02  9:22         ` Phillip Wood
2022-04-03 14:07           ` Ævar Arnfjörð Bjarmason
2022-04-04  9:27             ` Phillip Wood
2022-04-03 21:49           ` Junio C Hamano
2022-03-31  1:11       ` [PATCH v4 14/27] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 15/27] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 16/27] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 17/27] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 18/27] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 19/27] revisions API: have release_revisions() release "filter" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 20/27] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 21/27] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 22/27] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 23/27] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 24/27] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 25/27] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 26/27] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-03-31  1:11       ` [PATCH v4 27/27] revisions API: add a TODO for diff_free(&revs->diffopt) Ævar Arnfjörð Bjarmason
2022-04-02 10:49       ` [PATCH v5 00/27] revision.[ch]: add and use release_revisions() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 01/27] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 02/27] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 03/27] string_list API users: use string_list_init_{no,}dup Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 04/27] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 05/27] cocci: add and apply free_commit_list() rules Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 06/27] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 07/27] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 08/27] revision.[ch]: document and move code declared around "init" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 09/27] revisions API users: use release_revisions() needing REV_INFO_INIT Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 10/27] stash: always have the owner of "stash_info" free it Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 11/27] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 12/27] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 13/27] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 14/27] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-04-03  9:27           ` Phillip Wood
2022-04-03 13:55             ` Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 15/27] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 16/27] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 17/27] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-04-03  9:33           ` Phillip Wood
2022-04-03 13:57             ` Ævar Arnfjörð Bjarmason
2022-04-04  9:19               ` Phillip Wood
2022-04-02 10:49         ` [PATCH v5 18/27] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-04-03 12:54           ` Phillip Wood
2022-04-03 14:01             ` Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 19/27] revisions API: have release_revisions() release "filter" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 20/27] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 21/27] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 22/27] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 23/27] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-04-03 15:19           ` Phillip Wood
2022-04-02 10:49         ` [PATCH v5 24/27] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-04-03 13:00           ` Phillip Wood
2022-04-03 14:04             ` Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 25/27] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 26/27] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-04-02 10:49         ` [PATCH v5 27/27] revisions API: add a TODO for diff_free(&revs->diffopt) Ævar Arnfjörð Bjarmason
2022-04-03 13:07         ` [PATCH v5 00/27] revision.[ch]: add and use release_revisions() Phillip Wood
2022-04-03 14:18           ` Ævar Arnfjörð Bjarmason
2022-04-13 20:01         ` [PATCH v6 " Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 01/27] t/helper/test-fast-rebase.c: don't leak "struct strbuf" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 02/27] blame: use "goto cleanup" for cleanup_scoreboard() Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 03/27] string_list API users: use string_list_init_{no,}dup Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 04/27] format-patch: don't leak "extra_headers" or "ref_message_ids" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 05/27] cocci: add and apply free_commit_list() rules Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 06/27] revision.[ch]: provide and start using a release_revisions() Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 07/27] revisions API users: add straightforward release_revisions() Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 08/27] revision.[ch]: document and move code declared around "init" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 09/27] revisions API users: use release_revisions() needing REV_INFO_INIT Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 10/27] stash: always have the owner of "stash_info" free it Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 11/27] revisions API users: add "goto cleanup" for release_revisions() Ævar Arnfjörð Bjarmason
2022-07-11 18:06             ` Jeff King
2022-07-11 20:12               ` Ævar Arnfjörð Bjarmason
2022-07-12  6:54                 ` Jeff King
2022-07-12  7:03                   ` [PATCH] diff-files: move misplaced cleanup label Jeff King
2022-04-13 20:01           ` [PATCH v6 12/27] revisions API users: use release_revisions() in http-push.c Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 13/27] revisions API users: use release_revisions() in builtin/log.c Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 14/27] revisions API users: use release_revisions() with UNLEAK() Ævar Arnfjörð Bjarmason
2022-04-15 13:58             ` Phillip Wood
2022-04-13 20:01           ` [PATCH v6 15/27] revisions API users: use release_revisions() for "prune_data" users Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 16/27] revisions API: have release_revisions() release "commits" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 17/27] revisions API: have release_revisions() release "mailmap" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 18/27] revisions API: have release_revisions() release "cmdline" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 19/27] revisions API: have release_revisions() release "filter" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 20/27] revisions API: have release_revisions() release "grep_filter" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 21/27] revisions API: have release_revisions() release "prune_data" Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 22/27] revisions API: clear "boundary_commits" in release_revisions() Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 23/27] revisions API: release "reflog_info" in release revisions() Ævar Arnfjörð Bjarmason
2022-04-13 20:01           ` [PATCH v6 24/27] revisions API: call diff_free(&revs->pruning) in revisions_release() Ævar Arnfjörð Bjarmason
2022-04-14  5:56           ` [PATCH v6 25/27] revisions API: have release_revisions() release "date_mode" Ævar Arnfjörð Bjarmason
2022-04-14  5:56           ` [PATCH v6 26/27] revisions API: have release_revisions() release "topo_walk_info" Ævar Arnfjörð Bjarmason
2022-04-14  5:56           ` [PATCH v6 27/27] revisions API: add a TODO for diff_free(&revs->diffopt) Ævar Arnfjörð Bjarmason

Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).