diff options
| -rw-r--r-- | include/semaphore.h | 88 | ||||
| -rw-r--r-- | libc/sysdeps/linux/common/bits/pthreadtypes.h | 142 | 
2 files changed, 0 insertions, 230 deletions
| diff --git a/include/semaphore.h b/include/semaphore.h deleted file mode 100644 index 9c283c864..000000000 --- a/include/semaphore.h +++ /dev/null @@ -1,88 +0,0 @@ -/* Linuxthreads - a simple clone()-based implementation of Posix        */ -/* threads for Linux.                                                   */ -/* Copyright (C) 1996 Xavier Leroy (Xavier.Leroy@inria.fr)              */ -/*                                                                      */ -/* This program is free software; you can redistribute it and/or        */ -/* modify it under the terms of the GNU Library General Public License  */ -/* as published by the Free Software Foundation; either version 2       */ -/* of the License, or (at your option) any later version.               */ -/*                                                                      */ -/* This program is distributed in the hope that it will be useful,      */ -/* but WITHOUT ANY WARRANTY; without even the implied warranty of       */ -/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        */ -/* GNU Library General Public License for more details.                 */ - -#ifndef _SEMAPHORE_H -#define _SEMAPHORE_H    1 - -#include <features.h> -#include <sys/types.h> -#ifdef __USE_XOPEN2K -# define __need_timespec -# include <time.h> -#endif - -#ifndef _PTHREAD_DESCR_DEFINED -/* Thread descriptors.  Needed for `sem_t' definition.  */ -typedef struct _pthread_descr_struct *_pthread_descr; -# define _PTHREAD_DESCR_DEFINED -#endif - -/* System specific semaphore definition.  */ -typedef struct -{ -  struct _pthread_fastlock __sem_lock; -  int __sem_value; -  _pthread_descr __sem_waiting; -} sem_t; - - - -/* Value returned if `sem_open' failed.  */ -#define SEM_FAILED	((sem_t *) 0) - -/* Maximum value the semaphore can have.  */ -#define SEM_VALUE_MAX 	((int) ((~0u) >> 1)) - - -__BEGIN_DECLS - -/* Initialize semaphore object SEM to VALUE.  If PSHARED then share it -   with other processes.  */ -extern int sem_init (sem_t *__sem, int __pshared, unsigned int __value) __THROW; - -/* Free resources associated with semaphore object SEM.  */ -extern int sem_destroy (sem_t *__sem) __THROW; - -/* Open a named semaphore NAME with open flaot OFLAG.  */ -extern sem_t *sem_open (__const char *__name, int __oflag, ...) __THROW; - -/* Close descriptor for named semaphore SEM.  */ -extern int sem_close (sem_t *__sem) __THROW; - -/* Remove named semaphore NAME.  */ -extern int sem_unlink (__const char *__name) __THROW; - -/* Wait for SEM being posted.  */ -extern int sem_wait (sem_t *__sem) __THROW; - -#ifdef __USE_XOPEN2K -/* Similar to `sem_wait' but wait only until ABSTIME.  */ -extern int sem_timedwait (sem_t *__restrict __sem, -			  __const struct timespec *__restrict __abstime) -     __THROW; -#endif - -/* Test whether SEM is posted.  */ -extern int sem_trywait (sem_t *__sem) __THROW; - -/* Post SEM.  */ -extern int sem_post (sem_t *__sem) __THROW; - -/* Get current value of SEM and store it in *SVAL.  */ -extern int sem_getvalue (sem_t *__restrict __sem, int *__restrict __sval) -     __THROW; - -__END_DECLS - -#endif  /* semaphore.h */ diff --git a/libc/sysdeps/linux/common/bits/pthreadtypes.h b/libc/sysdeps/linux/common/bits/pthreadtypes.h deleted file mode 100644 index 3ee5c4813..000000000 --- a/libc/sysdeps/linux/common/bits/pthreadtypes.h +++ /dev/null @@ -1,142 +0,0 @@ -/* Linuxthreads - a simple clone()-based implementation of Posix        */ -/* threads for Linux.                                                   */ -/* Copyright (C) 1996 Xavier Leroy (Xavier.Leroy@inria.fr)              */ -/*                                                                      */ -/* This program is free software; you can redistribute it and/or        */ -/* modify it under the terms of the GNU Library General Public License  */ -/* as published by the Free Software Foundation; either version 2       */ -/* of the License, or (at your option) any later version.               */ -/*                                                                      */ -/* This program is distributed in the hope that it will be useful,      */ -/* but WITHOUT ANY WARRANTY; without even the implied warranty of       */ -/* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the        */ -/* GNU Library General Public License for more details.                 */ - -#if !defined _BITS_TYPES_H && !defined _PTHREAD_H -# error "Never include <bits/pthreadtypes.h> directly; use <sys/types.h> instead." -#endif - -#ifndef _BITS_PTHREADTYPES_H -#define _BITS_PTHREADTYPES_H	1 - -#define __need_schedparam -#include <bits/sched.h> - -/* Fast locks (not abstract because mutexes and conditions aren't abstract). */ -struct _pthread_fastlock -{ -  long int __status;   /* "Free" or "taken" or head of waiting list */ -  int __spinlock;      /* Used by compare_and_swap emulation. Also, -			  adaptive SMP lock stores spin count here. */ -}; - -#ifndef _PTHREAD_DESCR_DEFINED -/* Thread descriptors */ -typedef struct _pthread_descr_struct *_pthread_descr; -# define _PTHREAD_DESCR_DEFINED -#endif - - -/* Attributes for threads.  */ -typedef struct __pthread_attr_s -{ -  int __detachstate; -  int __schedpolicy; -  struct __sched_param __schedparam; -  int __inheritsched; -  int __scope; -  size_t __guardsize; -  int __stackaddr_set; -  void *__stackaddr; -  size_t __stacksize; -} pthread_attr_t; - - -/* Conditions (not abstract because of PTHREAD_COND_INITIALIZER */ -typedef struct -{ -  struct _pthread_fastlock __c_lock; /* Protect against concurrent access */ -  _pthread_descr __c_waiting;        /* Threads waiting on this condition */ -} pthread_cond_t; - - -/* Attribute for conditionally variables.  */ -typedef struct -{ -  int __dummy; -} pthread_condattr_t; - -/* Keys for thread-specific data */ -typedef unsigned int pthread_key_t; - - -/* Mutexes (not abstract because of PTHREAD_MUTEX_INITIALIZER).  */ -/* (The layout is unnatural to maintain binary compatibility -    with earlier releases of LinuxThreads.) */ -typedef struct -{ -  int __m_reserved;               /* Reserved for future use */ -  int __m_count;                  /* Depth of recursive locking */ -  _pthread_descr __m_owner;       /* Owner thread (if recursive or errcheck) */ -  int __m_kind;                   /* Mutex kind: fast, recursive or errcheck */ -  struct _pthread_fastlock __m_lock; /* Underlying fast lock */ -} pthread_mutex_t; - - -/* Attribute for mutex.  */ -typedef struct -{ -  int __mutexkind; -} pthread_mutexattr_t; - - -/* Once-only execution */ -typedef int pthread_once_t; - - -#ifdef __USE_UNIX98 -/* Read-write locks.  */ -typedef struct _pthread_rwlock_t -{ -  struct _pthread_fastlock __rw_lock; /* Lock to guarantee mutual exclusion */ -  int __rw_readers;                   /* Number of readers */ -  _pthread_descr __rw_writer;         /* Identity of writer, or NULL if none */ -  _pthread_descr __rw_read_waiting;   /* Threads waiting for reading */ -  _pthread_descr __rw_write_waiting;  /* Threads waiting for writing */ -  int __rw_kind;                      /* Reader/Writer preference selection */ -  int __rw_pshared;                   /* Shared between processes or not */ -} pthread_rwlock_t; - - -/* Attribute for read-write locks.  */ -typedef struct -{ -  int __lockkind; -  int __pshared; -} pthread_rwlockattr_t; -#endif - -#ifdef __USE_XOPEN2K -/* POSIX spinlock data type.  */ -typedef volatile int pthread_spinlock_t; - -/* POSIX barrier. */ -typedef struct { -  struct _pthread_fastlock __ba_lock; /* Lock to guarantee mutual exclusion */ -  int __ba_required;                  /* Threads needed for completion */ -  int __ba_present;                   /* Threads waiting */ -  _pthread_descr __ba_waiting;        /* Queue of waiting threads */ -} pthread_barrier_t; - -/* barrier attribute */ -typedef struct { -  int __pshared; -} pthread_barrierattr_t; - -#endif - - -/* Thread identifiers */ -typedef unsigned long int pthread_t; - -#endif	/* bits/pthreadtypes.h */ | 
