Subject: Re: [PATCH v3 0/6] mingw: stop using nedmalloc

From: Patrick Steinhardt <[email-masked]>
Date: Fri, 8 May 2026 15:17:44 +0200

On Fri, May 08, 2026 at 12:50:55PM +0000, Johannes Schindelin via GitGitGadget wrote:
> Git for Windows' SDK wants to update GCC to v16. Since it is used in the CI
> builds also of the git/git repository, it is crucial that GCC can compile
> even the latter all right, but currently it does not, see
> https://github.com/git-for-windows/git-sdk-64/actions/runs/25244795074.
> 
> Git for Windows switched away from nedmalloc to mimalloc a long time ago,
> but recent benchmarks across Windows, macOS, and Linux (see
> https://github.com/git-for-windows/git/pull/6231) show no measurable benefit
> from mimalloc over the platforms' default allocators, so rather than
> upstreaming the mimalloc support, I will drop it from Git for Windows
> entirely.
> 
> This series therefore disables nedmalloc for MINGW builds and removes the
> vendored-in nedmalloc from Git's source code; my earlier sketch in
> https://lore.kernel.org/git/[email-masked]/ had
> the opposite ordering only because it assumed mimalloc would land first.
> Since that's not going to happen, it's best to move forward with this, so
> that the CI builds can switch to using GCC 16 (and the current Git for
> Windows SDK) on Windows.
> 
> The patches that remove the vendored sources have a slightly unusual shape:
> the Git mailing list rejects messages over 100kB and
> compat/nedmalloc/malloc.c.h alone is ~196kB of source, so the deletion of
> that file is split at section boundaries into three commits, each
> comfortably under the cap. The intention (as documented by the last three
> commit messages) is for them to be squashed by the Git maintainer before
> merging.
> 
> Changes since v2:
> 
>  * Reworded the last 4 patches as recommended by Junio, in preparation for
>    squashing them on his end.

Heh, fun.

> Changes since v1:
> 
>  * Also remove nedmalloc from the CMake and Meson configurations in the
>    first patch.
>  * Add follow-up patches that drop the nedmalloc build-system plumbing and
>    source files.

I think removing nedmalloc makes sense, and am happy with the state of
this series. Thanks!

Patrick