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 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.