about summary refs log tree commit diff
path: root/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
diff options
context:
space:
mode:
Diffstat (limited to 'ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c')
-rw-r--r--ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c37
1 files changed, 5 insertions, 32 deletions
diff --git a/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c b/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
index 417f9d3eab..bd20f86f2c 100644
--- a/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
+++ b/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
@@ -1,4 +1,4 @@
-/* Copyright (C) 2005, 2006, 2009 Free Software Foundation, Inc.
+/* Copyright (C) 2005-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
@@ -32,9 +32,6 @@
 #ifdef __ASSUME_ATFCTS
 # define __have_atfcts 1
 #endif
-#ifdef __ASSUME_STAT64_SYSCALL
-# define __libc_missing_axp_stat64 0
-#endif
 
 /* Get information about the file NAME in BUF.  */
 int
@@ -99,38 +96,14 @@ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag)
       file = buf;
     }
 
-#ifdef __NR_stat64
-  if (!__libc_missing_axp_stat64)
-    {
-      if (flag & AT_SYMLINK_NOFOLLOW)
-	result = INTERNAL_SYSCALL (lstat64, err, 2, file, st);
-      else
-	result = INTERNAL_SYSCALL (stat64, err, 2, file, st);
-
-      if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
-	return result;
-      errno_out = INTERNAL_SYSCALL_ERRNO (result, err);
-# if __ASSUME_STAT64_SYSCALL == 0
-      if (errno_out == ENOSYS)
-	__libc_missing_axp_stat64 = 1;
-      else
-# endif
-	goto fail;
-    }
-#endif /* __NR_stat64 */
-
-  struct kernel_stat kst;
-
   if (flag & AT_SYMLINK_NOFOLLOW)
-    result = INTERNAL_SYSCALL (lstat, err, 2, file, &kst);
+    result = INTERNAL_SYSCALL (lstat64, err, 2, file, st);
   else
-    result = INTERNAL_SYSCALL (stat, err, 2, file, &kst);
-
+    result = INTERNAL_SYSCALL (stat64, err, 2, file, st);
   if (__builtin_expect (!INTERNAL_SYSCALL_ERROR_P (result, err), 1))
-    return __xstat_conv (vers, &kst, st);
-  errno_out = INTERNAL_SYSCALL_ERRNO (result, err);
+    return result;
 
- fail:
+  errno_out = INTERNAL_SYSCALL_ERRNO (result, err);
   __atfct_seterrno (errno_out, fd, buf);
 
   return -1;