diff options
-rw-r--r-- | ChangeLog | 7 | ||||
-rw-r--r-- | NEWS | 6 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/microblaze/futimesat.c | 30 | ||||
-rw-r--r-- | sysdeps/unix/sysv/linux/microblaze/kernel-features.h | 5 |
4 files changed, 45 insertions, 3 deletions
@@ -1,3 +1,10 @@ +2014-03-31 Joseph Myers <joseph@codesourcery.com> + + [BZ #16648] + * sysdeps/unix/sysv/linux/microblaze/kernel-features.h + [__LINUX_KERNEL_VERSION >= 0x020621] (__ASSUME_FUTIMESAT): Define. + * sysdeps/unix/sysv/linux/microblaze/futimesat.c: New file. + 2014-03-31 Will Newton <will.newton@linaro.org> * benchtests/Makefile (bench): Add ffs and ffsll to list @@ -11,9 +11,9 @@ Version 2.20 15347, 15804, 15894, 16002, 16198, 16284, 16348, 16357, 16362, 16447, 16532, 16545, 16574, 16599, 16600, 16609, 16610, 16611, 16613, 16623, - 16632, 16634, 16639, 16642, 16649, 16670, 16674, 16677, 16680, 16683, - 16689, 16695, 16701, 16706, 16707, 16712, 16713, 16714, 16731, 16743, - 16758, 16759, 16760, 16770. + 16632, 16634, 16639, 16642, 16648, 16649, 16670, 16674, 16677, 16680, + 16683, 16689, 16695, 16701, 16706, 16707, 16712, 16713, 16714, 16731, + 16743, 16758, 16759, 16760, 16770. * Running the testsuite no longer terminates as soon as a test fails. Instead, a file tests.sum (xtests.sum from "make xcheck") is generated, diff --git a/sysdeps/unix/sysv/linux/microblaze/futimesat.c b/sysdeps/unix/sysv/linux/microblaze/futimesat.c new file mode 100644 index 0000000..7037c04 --- /dev/null +++ b/sysdeps/unix/sysv/linux/microblaze/futimesat.c @@ -0,0 +1,30 @@ +/* Implement futimesat for MicroBlaze. + Copyright (C) 2014 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, see + <http://www.gnu.org/licenses/>. */ + +/* MicroBlaze always had the utimensat syscall but gained the + futimesat syscall later, so use the linux-generic implementation of + futimesat in terms of the utimensat syscall unless the futimesat + syscall is known to be available. */ + +#include <kernel-features.h> + +#ifdef __ASSUME_FUTIMESAT +# include <sysdeps/unix/sysv/linux/futimesat.c> +#else +# include <sysdeps/unix/sysv/linux/generic/futimesat.c> +#endif diff --git a/sysdeps/unix/sysv/linux/microblaze/kernel-features.h b/sysdeps/unix/sysv/linux/microblaze/kernel-features.h index f9a61a9..e7f6db2 100644 --- a/sysdeps/unix/sysv/linux/microblaze/kernel-features.h +++ b/sysdeps/unix/sysv/linux/microblaze/kernel-features.h @@ -41,6 +41,11 @@ # define __ASSUME_SENDMMSG_SYSCALL 1 #endif +/* Support for the futimesat syscall was added in 2.6.33. */ +#if __LINUX_KERNEL_VERSION >= 0x020621 +# define __ASSUME_FUTIMESAT 1 +#endif + #include_next <kernel-features.h> /* The MicroBlaze kernel does not support the pselect6, preadv and |