[PATCH v2] malloc: Fix list_lock/arena lock deadlock [BZ #19182]

Florian Weimer fweimer@redhat.com
Tue Dec 22 19:32:00 GMT 2015


On 12/21/2015 10:54 PM, Carlos O'Donell wrote:

>> +   list_lock also prevents concurrent forks.  When list_lock is
>> +   acquired, no arena lock must be acquired, but it is permitted to
>> +   acquire arena locks after list_lock.  */
> 
> This last sentence seems ambiguous to me. I assume you mean to say that
> at the point at which list_lock is acquired there are no other arena
> locks held, but that after list_lock is acquired, other arena locks may
> be acquired afterwards?

That was my intent.  Is this clearer?

  list_lock also prevents concurrent forks.  At the time list_lock is
  acquired, no arena lock must have been acquired, but it is permitted
  to acquire arena locks subsequently, while list_lock is acquired.

I'm following Torvald's earlier guidance not to speak of “held” locks.

Florian



More information about the Libc-alpha mailing list