Author: aurel32
Date: 2011-03-11 17:05:38 +0000 (Fri, 11 Mar 2011)
New Revision: 4572

Added:
   
glibc-package/branches/eglibc-2.13/debian/patches/alpha/submitted-fxstatat.patch
Modified:
   glibc-package/branches/eglibc-2.13/debian/changelog
   glibc-package/branches/eglibc-2.13/debian/patches/series
Log:
  * Add patches/alpha/submitted-fxstatat.patch to implement __fxstat() 
    using the (not so) new fstatat64 syscall on alpha.



Modified: glibc-package/branches/eglibc-2.13/debian/changelog
===================================================================
--- glibc-package/branches/eglibc-2.13/debian/changelog 2011-03-07 17:37:08 UTC 
(rev 4571)
+++ glibc-package/branches/eglibc-2.13/debian/changelog 2011-03-11 17:05:38 UTC 
(rev 4572)
@@ -134,6 +134,8 @@
     on GNU/kFreeBSD.
   * Add patches/s390/submitted-iconv-z9-109.diff to fix FTBFS on s390
     with recent binutils.
+  * Add patches/alpha/submitted-fxstatat.patch to implement __fxstat() 
+    using the (not so) new fstatat64 syscall on alpha.
 
   [ Samuel Thibault ]
   * Add patches/any/cvs-glro_dl_debug_mask.diff to fix build without

Added: 
glibc-package/branches/eglibc-2.13/debian/patches/alpha/submitted-fxstatat.patch
===================================================================
--- 
glibc-package/branches/eglibc-2.13/debian/patches/alpha/submitted-fxstatat.patch
                            (rev 0)
+++ 
glibc-package/branches/eglibc-2.13/debian/patches/alpha/submitted-fxstatat.patch
    2011-03-11 17:05:38 UTC (rev 4572)
@@ -0,0 +1,57 @@
+2011-03-11  Aurelien Jarno  <[email protected]>
+
+       * sysdeps/unix/sysv/linux/alpha/fxstatat.c(__fxstatat): use fstatat64
+       syscall when available.
+
+--- a/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
++++ b/ports/sysdeps/unix/sysv/linux/alpha/fxstatat.c
+@@ -35,6 +35,32 @@
+ int
+ __fxstatat (int vers, int fd, const char *file, struct stat *st, int flag)
+ {
++  int result;
++  INTERNAL_SYSCALL_DECL (err);
++
++#ifdef __NR_fstatat64
++# ifndef __ASSUME_ATFCTS
++  if (__have_atfcts >= 0)
++# endif
++    {
++      result = INTERNAL_SYSCALL (fstatat64, err, 4, fd, file, st, flag);
++# ifndef __ASSUME_ATFCTS
++      if (__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 1)
++         && INTERNAL_SYSCALL_ERRNO (result, err) == ENOSYS)
++      __have_atfcts = -1;
++      else
++# endif
++      if (!__builtin_expect (INTERNAL_SYSCALL_ERROR_P (result, err), 1))
++        return 0;
++      else
++        {
++          __set_errno (INTERNAL_SYSCALL_ERRNO (result, err));
++          return -1;
++        }
++    }
++#endif
++
++#ifndef __ASSUME_ATFCTS
+   if (flag & ~AT_SYMLINK_NOFOLLOW)
+     {
+       __set_errno (EINVAL);
+@@ -68,7 +94,7 @@ __fxstatat (int vers, int fd, const char *file, struct stat 
*st, int flag)
+     }
+ 
+   INTERNAL_SYSCALL_DECL (err);
+-  int result, errno_out;
++  int errno_out;
+   struct kernel_stat kst;
+ 
+ #if __ASSUME_STAT64_SYSCALL > 0
+@@ -114,6 +140,7 @@ __fxstatat (int vers, int fd, const char *file, struct 
stat *st, int flag)
+   __atfct_seterrno (errno_out, fd, buf);
+ 
+   return -1;
++#endif
+ }
+ libc_hidden_def (__fxstatat)
+ strong_alias (__fxstatat, __fxstatat64);

Modified: glibc-package/branches/eglibc-2.13/debian/patches/series
===================================================================
--- glibc-package/branches/eglibc-2.13/debian/patches/series    2011-03-07 
17:37:08 UTC (rev 4571)
+++ glibc-package/branches/eglibc-2.13/debian/patches/series    2011-03-11 
17:05:38 UTC (rev 4572)
@@ -51,6 +51,7 @@
 alpha/submitted-stackinfo.diff
 alpha/submitted-statfs.diff
 alpha/submitted-libm-hidden.diff
+alpha/submitted-fxstatat.patch
 
 amd64/local-biarch.diff
 amd64/local-clone.diff


-- 
To UNSUBSCRIBE, email to [email protected]
with a subject of "unsubscribe". Trouble? Contact [email protected]
Archive: http://lists.debian.org/[email protected]

Reply via email to