Browse Source

move aio implementation details to a proper internal header

also fix the lack of declaration (and thus hidden visibility) in
__stdio_close's use of __aio_close.
master
Rich Felker 6 years ago
parent
commit
557673603b
  1. 1
      src/aio/aio.c
  2. 1
      src/aio/aio_suspend.c
  3. 1
      src/include/unistd.h
  4. 9
      src/internal/aio_impl.h
  5. 3
      src/internal/pthread_impl.h
  6. 1
      src/process/_Fork.c
  7. 1
      src/stdio/__stdio_close.c
  8. 1
      src/unistd/close.c

1
src/aio/aio.c

@ -9,6 +9,7 @@
#include "syscall.h"
#include "atomic.h"
#include "pthread_impl.h"
#include "aio_impl.h"
/* The following is a threads-based implementation of AIO with minimal
* dependence on implementation details. Most synchronization is

1
src/aio/aio_suspend.c

@ -3,6 +3,7 @@
#include <time.h>
#include "atomic.h"
#include "pthread_impl.h"
#include "aio_impl.h"
int aio_suspend(const struct aiocb *const cbs[], int cnt, const struct timespec *ts)
{

1
src/include/unistd.h

@ -8,7 +8,6 @@ extern char **__environ;
hidden int __dup3(int, int, int);
hidden int __mkostemps(char *, int, int);
hidden int __execvpe(const char *, char *const *, char *const *);
hidden int __aio_close(int);
hidden off_t __lseek(int, off_t, int);
#endif

9
src/internal/aio_impl.h

@ -0,0 +1,9 @@
#ifndef AIO_IMPL_H
#define AIO_IMPL_H
extern hidden volatile int __aio_fut;
extern hidden int __aio_close(int);
extern hidden void __aio_atfork(int);
#endif

3
src/internal/pthread_impl.h

@ -154,11 +154,8 @@ hidden int __pthread_key_delete_impl(pthread_key_t);
extern hidden volatile size_t __pthread_tsd_size;
extern hidden void *__pthread_tsd_main[];
extern hidden volatile int __aio_fut;
extern hidden volatile int __eintr_valid_flag;
extern hidden void __aio_atfork(int);
hidden int __clone(int (*)(void *), void *, int, void *, ...);
hidden int __set_thread_area(void *);
hidden int __libc_sigaction(int, const struct sigaction *, struct sigaction *);

1
src/process/_Fork.c

@ -4,6 +4,7 @@
#include "libc.h"
#include "lock.h"
#include "pthread_impl.h"
#include "aio_impl.h"
static void dummy(int x) { }
weak_alias(dummy, __aio_atfork);

1
src/stdio/__stdio_close.c

@ -1,4 +1,5 @@
#include "stdio_impl.h"
#include "aio_impl.h"
static int dummy(int fd)
{

1
src/unistd/close.c

@ -1,5 +1,6 @@
#include <unistd.h>
#include <errno.h>
#include "aio_impl.h"
#include "syscall.h"
static int dummy(int fd)

Loading…
Cancel
Save