]> git.ipfire.org Git - thirdparty/git.git/commit
Revert "index-pack: spawn threads atomically"
authorJeff King <peff@peff.net>
Mon, 30 Dec 2024 04:26:10 +0000 (23:26 -0500)
committerJunio C Hamano <gitster@pobox.com>
Mon, 30 Dec 2024 14:18:57 +0000 (06:18 -0800)
commitca9d60f2460c296b32b3da97eb953bbc4d292197
tree8a54aa5e63a6df7842d705613a5b4c6f88a99116
parentd601aee6056a0afc6df7f77e15cdc155ff402dee
Revert "index-pack: spawn threads atomically"

This reverts commit 993d38a0669a8056d496797516e743e26b6b8b54.

That commit was trying to solve a race between LSan setting up the
threads stack and another thread calling exit(), by making sure that all
pthread_create() calls have finished before doing any work that might
trigger the exit().

But that isn't sufficient. The setup code actually runs in the
individual threads themselves, not in the spawning thread's call to
pthread_create(). So while it may have improved the race a bit, you can
still trigger it pretty quickly with:

  make SANITIZE=leak
  cd t
  ./t5309-pack-delta-cycles.sh --stress

Let's back out that failed attempt so we can try again.

Signed-off-by: Jeff King <peff@peff.net>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/index-pack.c