summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog9
-rw-r--r--include/fcntl.h2
-rw-r--r--sysdeps/unix/sysv/linux/fcntl.c4
-rw-r--r--sysdeps/unix/sysv/linux/i386/fcntl.c4
-rw-r--r--sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c4
5 files changed, 17 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index f3b6360811..479773a86f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,12 @@
+2004-07-09 Ulrich Drepper <drepper@redhat.com>
+
+ * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Move attribute
+ to the front for gcc 3.5+.
+ * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
+ * sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c: Likewise.
+ * include/fcntl.h: Don't declare __fcntl_nocancel here if
+ NO_CANCELLATION is defined.
+
2004-07-07 Jakub Jelinek <jakub@redhat.com>
* elf/dl-fini.c (_dl_fini): Add nloaded variable, load
diff --git a/include/fcntl.h b/include/fcntl.h
index 78e30544fe..7764f1cd62 100644
--- a/include/fcntl.h
+++ b/include/fcntl.h
@@ -9,8 +9,10 @@ extern int __libc_open (const char *file, int oflag, ...);
libc_hidden_proto (__libc_open)
extern int __libc_creat (const char *file, mode_t mode);
extern int __libc_fcntl (int fd, int cmd, ...);
+#ifndef NO_CANCELLATION
extern int __fcntl_nocancel (int fd, int cmd, ...) attribute_hidden;
libc_hidden_proto (__libc_fcntl)
+#endif
extern int __open (__const char *__file, int __oflag, ...);
libc_hidden_proto (__open)
extern int __fcntl (int __fd, int __cmd, ...);
diff --git a/sysdeps/unix/sysv/linux/fcntl.c b/sysdeps/unix/sysv/linux/fcntl.c
index ab8d9cfb9c..87fa2ffe31 100644
--- a/sysdeps/unix/sysv/linux/fcntl.c
+++ b/sysdeps/unix/sysv/linux/fcntl.c
@@ -18,17 +18,17 @@
#include <assert.h>
#include <errno.h>
+#include <sysdep-cancel.h> /* Must come before <fcntl.h>. */
#include <fcntl.h>
#include <stdarg.h>
-#include <sysdep-cancel.h>
#include <sys/syscall.h>
-int
#ifdef NO_CANCELLATION
static inline __attribute ((always_inline))
#endif
+int
__fcntl_nocancel (int fd, int cmd, ...)
{
va_list ap;
diff --git a/sysdeps/unix/sysv/linux/i386/fcntl.c b/sysdeps/unix/sysv/linux/i386/fcntl.c
index da65721ea2..7787c5863b 100644
--- a/sysdeps/unix/sysv/linux/i386/fcntl.c
+++ b/sysdeps/unix/sysv/linux/i386/fcntl.c
@@ -18,10 +18,10 @@
#include <assert.h>
#include <errno.h>
+#include <sysdep-cancel.h> /* Must come before <fcntl.h>. */
#include <fcntl.h>
#include <stdarg.h>
-#include <sysdep-cancel.h>
#include <sys/syscall.h>
#include "../kernel-features.h"
@@ -31,10 +31,10 @@ int __have_no_fcntl64;
#endif
-int
#ifdef NO_CANCELLATION
static inline __attribute ((always_inline))
#endif
+int
__fcntl_nocancel (int fd, int cmd, ...)
{
va_list ap;
diff --git a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
index 4b60a163ce..95b817bc40 100644
--- a/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
+++ b/sysdeps/unix/sysv/linux/powerpc/powerpc64/fcntl.c
@@ -18,17 +18,17 @@
#include <assert.h>
#include <errno.h>
+#include <sysdep-cancel.h> /* Must come before <fcntl.h>. */
#include <fcntl.h>
#include <stdarg.h>
-#include <sysdep-cancel.h>
#include <sys/syscall.h>
-int
#ifdef NO_CANCELLATION
static inline __attribute ((always_inline))
#endif
+int
__fcntl_nocancel (int fd, int cmd, ...)
{
va_list ap;