All of lore.kernel.org
 help / color / mirror / Atom feed
From: Taylor Blau <me@ttaylorr.com>
To: Jeff King <peff@peff.net>
Cc: git@vger.kernel.org
Subject: Re: [PATCH 03/10] merge: free result of repo_get_merge_bases()
Date: Thu, 5 Oct 2023 13:42:00 -0400	[thread overview]
Message-ID: <ZR71aA4RMoi2TcOJ@nand.local> (raw)
In-Reply-To: <20231003202724.GC7812@coredump.intra.peff.net>

On Tue, Oct 03, 2023 at 04:27:24PM -0400, Jeff King wrote:
> We call repo_get_merge_bases(), which allocates a commit_list, but never
> free the result, causing a leak.
>
> The obvious solution is to free it, but we need to look at the contents
> of the first item to decide whether to leave the loop. One option is to
> free it in both code paths. But since the commit that the list points to
> is longer-lived than the list itself, we can just dereference it
> immediately, free the list, and then continue with the existing logic.
> This is about the same amount of code, but keeps the list management all
> in one place.
>
> This lets us mark a number of merge-related test scripts as leak-free.

Wow, getting 10 newly leak-free tests for half as many lines of code is
terrific. Woohoo!

Thanks,
Taylor

  reply	other threads:[~2023-10-05 17:42 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-10-03 20:25 [PATCH 0/10] some commit-graph leak fixes Jeff King
2023-10-03 20:26 ` [PATCH 01/10] t6700: mark test as leak-free Jeff King
2023-10-05 17:40   ` Taylor Blau
2023-10-03 20:26 ` [PATCH 02/10] commit-reach: free temporary list in get_octopus_merge_bases() Jeff King
2023-10-03 20:27 ` [PATCH 03/10] merge: free result of repo_get_merge_bases() Jeff King
2023-10-05 17:42   ` Taylor Blau [this message]
2023-10-03 20:27 ` [PATCH 04/10] commit-graph: move slab-clearing to close_commit_graph() Jeff King
2023-10-05 17:42   ` Taylor Blau
2023-10-03 20:29 ` [PATCH 05/10] commit-graph: free all elements of graph chain Jeff King
2023-10-03 20:30 ` [PATCH 06/10] commit-graph: delay base_graph assignment in add_graph_to_chain() Jeff King
2023-10-05 17:44   ` Taylor Blau
2023-10-03 20:30 ` [PATCH 07/10] commit-graph: free graph struct that was not added to chain Jeff King
2023-10-03 20:30 ` [PATCH 08/10] commit-graph: free write-context entries before overwriting Jeff King
2023-10-05 17:51   ` Taylor Blau
2023-10-05 21:03     ` Jeff King
2023-10-03 20:31 ` [PATCH 09/10] commit-graph: free write-context base_graph_name during cleanup Jeff King
2023-10-03 20:31 ` [PATCH 10/10] commit-graph: clear oidset after finishing write Jeff King
2023-10-04  1:33 ` Is SANITIZE=leak make test unreliable for anyone else? Eric W. Biederman
2023-10-04 13:21   ` Jeff King
2023-10-04 14:19     ` Eric W. Biederman
2023-10-04 14:47       ` Jeff King
2023-10-04 15:38         ` Eric W. Biederman
2023-10-05 17:52 ` [PATCH 0/10] some commit-graph leak fixes Taylor Blau
2023-10-06  0:39   ` Junio C Hamano

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=ZR71aA4RMoi2TcOJ@nand.local \
    --to=me@ttaylorr.com \
    --cc=git@vger.kernel.org \
    --cc=peff@peff.net \
    /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.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.