mirror of
git://sourceware.org/git/glibc.git
synced 2024-12-09 04:11:27 +08:00
3d2dd6ca71
* sem_init.c (__new_sem_init): Rewrite to initialize all three fields in the structure. (__old_sem_init): New function. * sem_open.c: Initialize all fields of the structure. * sem_getvalue.c: Adjust for renamed element. * sysdeps/unix/sysv/linux/Makefile [subdir=nptl] (gen-as-const-headers): Add structsem.sym. * sysdeps/unix/sysv/linux/structsem.sym: New file. * sysdeps/unix/sysv/linux/internaltypes.h: Rename struct sem to struct new_sem. Add struct old_sem. * sysdeps/unix/sysv/linux/sem_post.c: Wake only when there are waiters. * sysdeps/unix/sysv/linux/i386/i486/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_post.S: Likewise. * sysdeps/unix/sysv/linux/sem_wait.c: Indicate that there are waiters. * sysdeps/unix/sysv/linux/i386/i486/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_wait.S: Likewise. * sysdeps/unix/sysv/linux/sem_timedwait.c: Likewise. * sysdeps/unix/sysv/linux/i386/i486/sem_timedwait.S: Likewise. * sysdeps/unix/sysv/linux/x86_64/sem_timedwait.S: Likewise. * Makefile (tests): Add tst-sem10, tst-sem11, tst-sem12. * tst-sem10.c: New file. * tst-sem11.c: New file. * tst-sem12.c: New file. * tst-typesizes.c: Test struct new_sem and struct old_sem instead of struct sem. 2007-05-25 Ulrich Drepper <drepper@redhat.com>
11 lines
231 B
Plaintext
11 lines
231 B
Plaintext
#include <stddef.h>
|
|
#include <sched.h>
|
|
#include <bits/pthreadtypes.h>
|
|
#include "internaltypes.h"
|
|
|
|
--
|
|
|
|
VALUE offsetof (struct new_sem, value)
|
|
PRIVATE offsetof (struct new_sem, private)
|
|
NWAITERS offsetof (struct new_sem, nwaiters)
|