From: "Lidong Yan via GitGitGadget" <gitgitgadget@gmail.com>
To: git@vger.kernel.org
Cc: Patrick Steinhardt <ps@pks.im>,
Lidong Yan <502024330056@smail.nju.edu.cn>
Subject: [PATCH v2 0/2] pack-bitmap: remove checks before bitmap_free
Date: Fri, 30 May 2025 18:14:04 +0000 [thread overview]
Message-ID: <pull.1977.v2.git.git.1748628846.gitgitgadget@gmail.com> (raw)
In-Reply-To: <pull.1977.git.git.1748149783383.gitgitgadget@gmail.com>
In pack-bitmap.c:find_boundary_objects, remove cascade success check and
always free roots_bitmap afterward to make static analysis tool works
better.
Lidong Yan (2):
pack-bitmap: remove checks before bitmap_free
t5333: test memory leak when use pseudo-merge in boundary traversal
pack-bitmap.c | 4 ++--
t/t5333-pseudo-merge-bitmaps.sh | 20 ++++++++++++++++++++
2 files changed, 22 insertions(+), 2 deletions(-)
base-commit: 845c48a16a7f7b2c44d8cb137b16a4a1f0140229
Published-As: https://github.com/gitgitgadget/git/releases/tag/pr-git-1977%2Fbrandb97%2Fremove-check-before-bitmap-free-v2
Fetch-It-Via: git fetch https://github.com/gitgitgadget/git pr-git-1977/brandb97/remove-check-before-bitmap-free-v2
Pull-Request: https://github.com/git/git/pull/1977
Range-diff vs v1:
1: 19677bcbc3d ! 1: d7b7a0e29ec pack-bitmap: remove checks before bitmap_free
@@ Commit message
pack-bitmap: remove checks before bitmap_free
In pack-bitmap.c:find_boundary_objects, we build a roots_bitmap and
- cascade it to cb.base. However, I’m wondering why we only free
- roots_bitmap when the cascade succeeds. It seems we could safely remove
- this check and always free roots_bitmap afterward, which might provide
- some performance benefits.
+ cascade it to cb.base. Only when cascade failed, roots_bitmap is
+ freed otherwise it leaks. Since cascade_pseudo_merges_1() only use
+ roots_bitmap as a mutable reference not takes roots_bitmap's ownership
+ we'd better remove `if(cascade_pseudo_merges_1)` and frees roots_bitmap
+ anyway.
Signed-off-by: Lidong Yan <502024330056@smail.nju.edu.cn>
-: ----------- > 2: 56b24d681cb t5333: test memory leak when use pseudo-merge in boundary traversal
--
gitgitgadget
next prev parent reply other threads:[~2025-05-30 18:14 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-25 5:09 [PATCH] pack-bitmap: remove checks before bitmap_free Lidong Yan via GitGitGadget
2025-05-26 6:49 ` Patrick Steinhardt
2025-05-26 16:05 ` lidongyan
2025-05-30 18:14 ` Lidong Yan via GitGitGadget [this message]
2025-05-30 18:14 ` [PATCH v2 1/2] " Lidong Yan via GitGitGadget
2025-05-30 18:14 ` [PATCH v2 2/2] t5333: test memory leak when use pseudo-merge in boundary traversal Lidong Yan via GitGitGadget
2025-05-30 21:42 ` Junio C Hamano
2025-05-30 21:50 ` Eric Sunshine
2025-05-31 3:18 ` lidongyan
2025-05-30 21:06 ` [PATCH v2 0/2] pack-bitmap: remove checks before bitmap_free Junio C Hamano
2025-06-03 1:46 ` [PATCH v3] " Lidong Yan via GitGitGadget
2025-06-03 6:12 ` Junio C Hamano
2025-06-03 6:22 ` lidongyan
2025-06-03 15:14 ` Junio C Hamano
2025-06-03 15:32 ` lidongyan
2025-06-04 12:32 ` Junio C Hamano
2025-06-04 12:43 ` lidongyan
2025-06-04 14:49 ` Junio C Hamano
2025-06-03 6:20 ` [PATCH v4] " Lidong Yan via GitGitGadget
2025-06-03 22:09 ` Taylor Blau
2025-06-04 2:50 ` lidongyan
2025-06-05 6:24 ` [PATCH v5] " Lidong Yan via GitGitGadget
2025-06-05 15:29 ` Junio C Hamano
2025-06-10 5:58 ` lidongyan
2025-06-05 15:53 ` [PATCH v6] " Lidong Yan via GitGitGadget
2025-06-06 1:28 ` Junio C Hamano
2025-06-06 5:49 ` lidongyan
2025-06-09 8:18 ` [PATCH v7] " Lidong Yan via GitGitGadget
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=pull.1977.v2.git.git.1748628846.gitgitgadget@gmail.com \
--to=gitgitgadget@gmail.com \
--cc=502024330056@smail.nju.edu.cn \
--cc=git@vger.kernel.org \
--cc=ps@pks.im \
/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 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).