1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00

Remove pre-2.2 Linux kernel support.

This commit is contained in:
Joseph Myers
2012-05-14 14:11:02 +00:00
parent 1bfb72913b
commit ffb7875d03
40 changed files with 333 additions and 1447 deletions

View File

@ -1,6 +1,5 @@
/* Poll system call, with emulation if it is not available.
Copyright (C) 1997,1998,1999,2000,2001,2002,2006
Free Software Foundation, Inc.
/* Poll system call.
Copyright (C) 1997-2012 Free Software Foundation, Inc.
This file is part of the GNU C Library.
The GNU C Library is free software; you can redistribute it and/or
@ -26,58 +25,12 @@
#include <kernel-features.h>
#if defined __NR_poll || __ASSUME_POLL_SYSCALL > 0
# if __ASSUME_POLL_SYSCALL == 0
static int __emulate_poll (struct pollfd *fds, nfds_t nfds,
int timeout) internal_function;
# endif
# if __ASSUME_POLL_SYSCALL == 0
/* For loser kernels. */
static int
loser_poll (struct pollfd *fds, nfds_t nfds, int timeout)
{
static int must_emulate;
if (!must_emulate)
{
int errno_saved = errno;
int retval = INLINE_SYSCALL (poll, 3, CHECK_N (fds, nfds), nfds,
timeout);
if (retval >= 0 || errno != ENOSYS)
return retval;
__set_errno (errno_saved);
must_emulate = 1;
}
return __emulate_poll (fds, nfds, timeout);
}
# endif
/* The real implementation. */
int
__poll (fds, nfds, timeout)
struct pollfd *fds;
nfds_t nfds;
int timeout;
{
# if __ASSUME_POLL_SYSCALL == 0
if (SINGLE_THREAD_P)
return loser_poll (CHECK_N (fds, nfds), nfds, timeout);
int oldtype = LIBC_CANCEL_ASYNC ();
int result = loser_poll (CHECK_N (fds, nfds), nfds, timeout);
LIBC_CANCEL_RESET (oldtype);
return result;
# else
if (SINGLE_THREAD_P)
return INLINE_SYSCALL (poll, 3, CHECK_N (fds, nfds), nfds, timeout);
@ -88,17 +41,7 @@ __poll (fds, nfds, timeout)
LIBC_CANCEL_RESET (oldtype);
return result;
# endif
}
libc_hidden_def (__poll)
weak_alias (__poll, poll)
strong_alias (__poll, __libc_poll)
/* Get the emulation code. */
# define __poll(fds, nfds, timeout) \
static internal_function __emulate_poll (fds, nfds, timeout)
#endif
#if __ASSUME_POLL_SYSCALL == 0
# include <sysdeps/unix/bsd/poll.c>
#endif