Subject: Re: [PATCH] http.c: clear the 'finished' member once we are done with it

From: Junio C Hamano <[email-masked]>
Date: Wed, 25 May 2022 09:40:43 -0700

Johannes Schindelin <[email-masked]> writes:

> This same analysis, of course, also puts a nail into the coffin of the
> `reserved_for_use` idea because while it would fix the reuse bug, it would
> unnecessarily squat on slots that might well be needed.

It is like that an in-kernel structure that represents a process has
to stay around in the zombie state until its exit status is culled.
With s/reserved_for_use/zombie/ the name of the new member would
make more sense ;-)

With the "slot->finished" trick, compared to the approach to delay
the reuse, we can reuse them a bit earlier, but because I do not
think we accumulate unbounded number of these zombie requests, and
when we run out the active slots in the active queue, and because
get_active_slot() will allocate a new one, the wastage might not be
too bad.

So, I am not sure if it is that bad to be called a nail in the
coffin.

In any case, https://github.com/git/git/actions/runs/2381379417 is
the run with the single liner "clear slot->finished before leaving"
with your other 3 gcc12 fixes.  The tests are not clean because we
have linux-leaks complaining on ds/bundle-uri-more RFC patches and
win test (9) seems to have issues with t7527 (fsmonitor), but I am
taking the fact that any of the "win test" jobs even start as an
evidence that we have pleased gcc12 enough to get there?

Thanks.