Replace MUTEX_INITIALIZER with _LIBC_LOCK_INITIALIZER in generic code

Samuel Thibault samuel.thibault@ens-lyon.org
Sat Aug 20 14:50:00 GMT 2016


Hello,

In 400e12265d99964f8445bb6d717321eb73152cc5 ('Replace MUTEX_INITIALIZER
with _LIBC_LOCK_INITIALIZER in generic code'),

--- b/sysdeps/generic/malloc-machine.h
-# define MUTEX_INITIALIZER      (0)

--- a/sysdeps/nptl/malloc-machine.h
-#define MUTEX_INITIALIZER      LLL_LOCK_INITIALIZER


-static mutex_t list_lock = MUTEX_INITIALIZER;
+static mutex_t list_lock = _LIBC_LOCK_INITIALIZER;

...

Why not keeping MUTEX_INITIALIZER? There is not only nptl and generic
ports of glibc, other ports may not be using libc_lock to implement
malloc's mutex...

And anyway, either malloc should be made to just use libc-lock or lll
explicitly, or the malloc-machine.h layer should be providing a complete
interface and users shouldn't be assuming anything about it.

Samuel



More information about the Libc-alpha mailing list