[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Introduce gsync-based locks to glibc.
From: |
Agustina Arzille |
Subject: |
Re: [PATCH] Introduce gsync-based locks to glibc. |
Date: |
Fri, 20 May 2016 21:45:14 -0300 |
Hello, Samuel,
On 05/20/2016 04:15 AM, Samuel Thibault wrote:
Just a nitpick (but important one since otherwise I'd have to do the
work myself): we need a ChangeLog in the GNU style, i.e. not only the
rationale as you wrote (which is very useful!) but also a description of
the changes themselves (new file, new function, etc.), see the ChangeLog
file to see what it looks like and the GNU Coding Style for the
reference.
Samuel
Here are the changelogs in GNU style. The first one is for glibc.
* hurd/hurdlock.h: New file.
* hurd/hurdlock.c: New file.
* hurd/Makefile: Add hurdlock.
* hurd/hurdpid.c: Include <lowlevellock.h>
(_S_msg_proc_newids): Use lll_wait to synchronize.
* hurd/hurdsig.c: (reauth_proc): Use __mutex_lock and __mutex_unlock.
* hurd/setauth.c: Include <hurdlock.h>, use integer for synchronization.
* mach/lowlevellock.h: New file
* mach/Makefile: Remove unneeded files, add lowlevellock.h
* mach/lock-intern.h: Use lll to implement spinlocks.
* mach/mutex-init.c: Rewrite mutex initialization.
* mach/mutex-solid.c: Removed file.
* mach/spin-solid.c: Removed file.
* manual/errno.texi: Add definitions for EOWNERDEAD and ENOTRECOVERABLE.
* sysdeps/mach/Makefile: Add libmachuser as dependencies for some libs.
* sysdeps/mach/bits/libc-lock.h: Reimplemented libc internal locks
with lll, cleanup routines now use gcc's cleanup attribute and
libc keys are now implemented with pthread instead of cthreads.
* sysdeps/mach/hurd/bits/errno.h: New errno values.
* sysdeps/mach/hurd/bits/libc-lock.h: Removed file.
* sysdeps/mach/hurd/bits/posix_opt.h: Add suport for process shared attribute.
* sysdeps/mach/hurd/cthreads.c: Removed definition for __libc_getspecific.
* sysdeps/mach/hurd/malloc-machine.h: Reimplemented malloc locks.
* sysdeps/mach/hurd/setpgid.c: (setpgid): Use gsync for synchronization.
* sysdeps/mach/hurd/setsid.c: (setsid): Likewise.
---
* Makefile: Remove pt-spin and add bits/xint.h.
* forward.c: Use lll and integers to synchronize, remove definitions for
__mutex_lock_solid and __mutex_unlock_solid.
* pthread/pt-create.c: Use atomic operations provided by glibc.
* pthread/pt-dealloc.c: Likewise.
* pthread/pt-exit.c: Likewise.
* pthread/pt-internal.h: Use the type definition for tcbhead_t as provided
by glibc, add definitions for cancellation points.
* sysdeps/i386/bits/pt-atomic.h: Rewrite complete file to include interface
for extended atomic operations on 64-bit integers.
* sysdeps/mach/bits/spin-lock-inline.h: Use lll to implement spinlocks.
* sysdeps/mach/i386/bits/spin-lock-inline.h: Likewise.
* sysdeps/pthread/bits/libc-lockP.h: Add definitions for libc keys.
* sysdeps/pthread/bits/xint.h: New file.
---