From ff9e7e3fe2fa6daf6ef542bb1fd1066164dd33bb Mon Sep 17 00:00:00 2001 From: Jakub Jelinek Date: Sat, 16 Feb 2008 17:31:45 +0000 Subject: Updated to fedora-glibc-20080216T1726 --- sysdeps/unix/sysv/linux/Makefile | 3 ++- sysdeps/unix/sysv/linux/Versions | 3 +++ sysdeps/unix/sysv/linux/sys/timerfd.h | 50 +++++++++++++++++++++++++++++++++++ sysdeps/unix/sysv/linux/syscalls.list | 4 +++ 4 files changed, 59 insertions(+), 1 deletion(-) create mode 100644 sysdeps/unix/sysv/linux/sys/timerfd.h (limited to 'sysdeps/unix/sysv/linux') diff --git a/sysdeps/unix/sysv/linux/Makefile b/sysdeps/unix/sysv/linux/Makefile index 5f32d1a4a9..ddbb4f68f8 100644 --- a/sysdeps/unix/sysv/linux/Makefile +++ b/sysdeps/unix/sysv/linux/Makefile @@ -25,7 +25,8 @@ sysdep_headers += sys/mount.h sys/acct.h sys/sysctl.h \ sys/quota.h sys/fsuid.h \ scsi/sg.h scsi/scsi.h scsi/scsi_ioctl.h sys/pci.h \ sys/ultrasound.h sys/raw.h sys/personality.h sys/epoll.h \ - bits/a.out.h sys/inotify.h sys/signalfd.h sys/eventfd.h + bits/a.out.h sys/inotify.h sys/signalfd.h sys/eventfd.h \ + sys/timerfd.h install-others += $(inst_includedir)/bits/syscall.h diff --git a/sysdeps/unix/sysv/linux/Versions b/sysdeps/unix/sysv/linux/Versions index dbf2ae5901..af4c293c26 100644 --- a/sysdeps/unix/sysv/linux/Versions +++ b/sysdeps/unix/sysv/linux/Versions @@ -132,6 +132,9 @@ libc { GLIBC_2.7 { eventfd; eventfd_read; eventfd_write; signalfd; } + GLIBC_2.8 { + timerfd_create; timerfd_settime; timerfd_gettime; + } GLIBC_PRIVATE { # functions used in other libraries __syscall_rt_sigqueueinfo; diff --git a/sysdeps/unix/sysv/linux/sys/timerfd.h b/sysdeps/unix/sysv/linux/sys/timerfd.h new file mode 100644 index 0000000000..0a4b81c9b7 --- /dev/null +++ b/sysdeps/unix/sysv/linux/sys/timerfd.h @@ -0,0 +1,50 @@ +/* Copyright (C) 2008 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 + modify it under the terms of the GNU Lesser General Public + License as published by the Free Software Foundation; either + version 2.1 of the License, or (at your option) any later version. + + The GNU C Library 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 + Lesser General Public License for more details. + + You should have received a copy of the GNU Lesser General Public + License along with the GNU C Library; if not, write to the Free + Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA + 02111-1307 USA. */ + +#ifndef _SYS_TIMERFD_H +#define _SYS_TIMERFD_H 1 + +#include + + +/* Bits to be set in the FLAGS parameter of `timerfd_settime'. */ +enum + { + TFD_TIMER_ABSTIME = 1 << 0 +#define TFD_TIMER_ABSTIME TFD_TIMER_ABSTIME + }; + + +__BEGIN_DECLS + +/* Return file descriptor for new interval timer source. */ +extern int timerfd_create (clockid_t __clock_id, int __flags) __THROW; + +/* Set next expiration time of interval timer source UFD to UTMR. If + FLAGS has the TFD_TIMER_ABSTIME flag set the timeout value is + absolute. Optionally return the old expiration time in OTMR. */ +extern int timerfd_settime (int __ufd, int __flags, + __const struct itimerspec *__utmr, + struct itimerspec *__otmr) __THROW; + +/* Return the next expiration time of UFD. */ +extern int timerfd_gettime (int __ufd, struct itimerspec *__otmr) __THROW; + +__END_DECLS + +#endif /* sys/timerfd.h */ diff --git a/sysdeps/unix/sysv/linux/syscalls.list b/sysdeps/unix/sysv/linux/syscalls.list index e304a78ea8..b3ecf9f478 100644 --- a/sysdeps/unix/sysv/linux/syscalls.list +++ b/sysdeps/unix/sysv/linux/syscalls.list @@ -94,3 +94,7 @@ fremovexattr - fremovexattr i:is fremovexattr mq_timedsend - mq_timedsend Ci:ipiip __GI_mq_timedsend mq_timedsend mq_timedreceive - mq_timedreceive Ci:ipipp __GI_mq_timedreceive mq_timedreceive mq_setattr - mq_getsetattr i:ipp __GI_mq_setattr mq_setattr + +timerfd_create EXTRA timerfd_create i:ii timerfd_create +timerfd_settime EXTRA timerfd_settime i:iipp timerfd_settime +timerfd_gettime EXTRA timerfd_gettime i:ip timerfd_gettime -- cgit v1.2.3