On Fri, 2015-04-03 at 15:01 -0700, Junio C Hamano wrote:
David Turner [off-list ref] writes:
quoted
Why is it impossible to free struct lock_files? I understand that they
become part of a linked list, and that there's an atexit handler that
goes over that list. But couldn't we just remove them from the linked
list and then free them?
I suspect that the code is worried about getting a signal, while it
is manipulating the linked list, and then cause the atexit handler
to walk a list that is in a broken state.
Actually, couldn't we just block signals with sigprocmask while
manipulating the list?