_exit in libc is now __sys_exit not __sys__exit.

Add another check for thread library initialization (jdp, we
really need a way to get _thread_init called at program start
before any constructors are run).
This commit is contained in:
Daniel Eischen 2001-01-29 03:24:23 +00:00
parent c37592a194
commit 221b1e69c5
7 changed files with 21 additions and 21 deletions

View File

@ -1281,8 +1281,8 @@ void _thread_enter_cancellation_point(void);
void _thread_leave_cancellation_point(void);
void _thread_cancellation_point(void);
/* #include <aio.h> */
#ifdef _AIO_H_
/* #include <sys/aio.h> */
#ifdef _SYS_AIO_H_
int __sys_aio_suspend(const struct aiocb **, int, const struct timespec);
#endif
@ -1349,7 +1349,7 @@ int __sys_select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
long __sys_fpathconf(int, int);
ssize_t __sys_read(int, void *, size_t);
ssize_t __sys_write(int, const void *, size_t);
void __sys__exit(int);
void __sys_exit(int);
#endif
/* #include <fcntl.h> */

View File

@ -43,10 +43,9 @@
#define FLAGS_IN_SCHEDQ \
(PTHREAD_FLAGS_IN_PRIOQ|PTHREAD_FLAGS_IN_WAITQ|PTHREAD_FLAGS_IN_WORKQ)
#pragma weak _exit=__exit
#pragma weak pthread_exit=_pthread_exit
void __exit(int status)
void _exit(int status)
{
int flags;
int i;
@ -79,7 +78,7 @@ void __exit(int status)
}
/* Call the _exit syscall: */
__sys__exit(status);
__sys_exit(status);
}
void
@ -104,7 +103,7 @@ _thread_exit(char *fname, int lineno, char *string)
#if defined(_PTHREADS_INVARIANTS)
abort();
#else
_exit(1);
__sys_exit(1);
#endif
}

View File

@ -76,6 +76,9 @@ _thread_fd_table_init(int fd)
struct fd_table_entry *entry;
int saved_errno;
if (_thread_initial == NULL)
_thread_init();
/* Check if the file descriptor is out of range: */
if (fd < 0 || fd >= _thread_dtablesize) {
/* Return a bad file descriptor error: */

View File

@ -43,10 +43,9 @@
#define FLAGS_IN_SCHEDQ \
(PTHREAD_FLAGS_IN_PRIOQ|PTHREAD_FLAGS_IN_WAITQ|PTHREAD_FLAGS_IN_WORKQ)
#pragma weak _exit=__exit
#pragma weak pthread_exit=_pthread_exit
void __exit(int status)
void _exit(int status)
{
int flags;
int i;
@ -79,7 +78,7 @@ void __exit(int status)
}
/* Call the _exit syscall: */
__sys__exit(status);
__sys_exit(status);
}
void
@ -104,7 +103,7 @@ _thread_exit(char *fname, int lineno, char *string)
#if defined(_PTHREADS_INVARIANTS)
abort();
#else
_exit(1);
__sys_exit(1);
#endif
}

View File

@ -1281,8 +1281,8 @@ void _thread_enter_cancellation_point(void);
void _thread_leave_cancellation_point(void);
void _thread_cancellation_point(void);
/* #include <aio.h> */
#ifdef _AIO_H_
/* #include <sys/aio.h> */
#ifdef _SYS_AIO_H_
int __sys_aio_suspend(const struct aiocb **, int, const struct timespec);
#endif
@ -1349,7 +1349,7 @@ int __sys_select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
long __sys_fpathconf(int, int);
ssize_t __sys_read(int, void *, size_t);
ssize_t __sys_write(int, const void *, size_t);
void __sys__exit(int);
void __sys_exit(int);
#endif
/* #include <fcntl.h> */

View File

@ -43,10 +43,9 @@
#define FLAGS_IN_SCHEDQ \
(PTHREAD_FLAGS_IN_PRIOQ|PTHREAD_FLAGS_IN_WAITQ|PTHREAD_FLAGS_IN_WORKQ)
#pragma weak _exit=__exit
#pragma weak pthread_exit=_pthread_exit
void __exit(int status)
void _exit(int status)
{
int flags;
int i;
@ -79,7 +78,7 @@ void __exit(int status)
}
/* Call the _exit syscall: */
__sys__exit(status);
__sys_exit(status);
}
void
@ -104,7 +103,7 @@ _thread_exit(char *fname, int lineno, char *string)
#if defined(_PTHREADS_INVARIANTS)
abort();
#else
_exit(1);
__sys_exit(1);
#endif
}

View File

@ -1281,8 +1281,8 @@ void _thread_enter_cancellation_point(void);
void _thread_leave_cancellation_point(void);
void _thread_cancellation_point(void);
/* #include <aio.h> */
#ifdef _AIO_H_
/* #include <sys/aio.h> */
#ifdef _SYS_AIO_H_
int __sys_aio_suspend(const struct aiocb **, int, const struct timespec);
#endif
@ -1349,7 +1349,7 @@ int __sys_select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
long __sys_fpathconf(int, int);
ssize_t __sys_read(int, void *, size_t);
ssize_t __sys_write(int, const void *, size_t);
void __sys__exit(int);
void __sys_exit(int);
#endif
/* #include <fcntl.h> */