diff options
author | Alexey Neyman <stilor@att.net> | 2017-12-02 20:44:39 (GMT) |
---|---|---|
committer | Alexey Neyman <stilor@att.net> | 2017-12-02 20:44:39 (GMT) |
commit | 98bc4decdeab1361bdc585c86591718fb08c8ffb (patch) | |
tree | 4e048ed57988306696efa3c5b81a80d48030e913 /packages/strace/4.10/0003-stat64-v.test.patch | |
parent | 2a1935f3ad41d360dd3d96a1b0486083293651dd (diff) |
Run all patches through renumbering and update
Signed-off-by: Alexey Neyman <stilor@att.net>
Diffstat (limited to 'packages/strace/4.10/0003-stat64-v.test.patch')
-rw-r--r-- | packages/strace/4.10/0003-stat64-v.test.patch | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/packages/strace/4.10/0003-stat64-v.test.patch b/packages/strace/4.10/0003-stat64-v.test.patch new file mode 100644 index 0000000..acb098b --- /dev/null +++ b/packages/strace/4.10/0003-stat64-v.test.patch @@ -0,0 +1,89 @@ +commit f79252f072a193bdff435afeaa6b6cd6d5c79947 +Author: Dmitry V. Levin <ldv@altlinux.org> +Date: Mon Mar 16 17:18:40 2015 +0000 + + stat64-v.test: add newfstatat syscall support + + Newer architectures have no stat syscall, so stat() is implemented there + using newfstatat syscall. + + * tests/stat.c (STAT_FNAME): Rename to STAT_PREFIX. Update callers. + [_FILE_OFFSET_BITS == 64] (STAT_PREFIX): Add newfstatat support. + (main) [!NR_stat]: Add newfstatat support. + + Reported-by: Andreas Schwab <schwab@suse.de> + +--- + tests/stat.c | 24 ++++++++++++++---------- + 1 file changed, 14 insertions(+), 10 deletions(-) + +--- a/tests/stat.c ++++ b/tests/stat.c +@@ -14,22 +14,22 @@ + # include <sys/types.h> + #endif + +-#undef STAT_FNAME ++#undef STAT_PREFIX + #undef NR_stat + + #if defined _FILE_OFFSET_BITS && _FILE_OFFSET_BITS == 64 + # include <sys/stat.h> +-# define STAT_FNAME "stat(64)?" ++# define STAT_PREFIX "(stat(64)?\\(|newfstatat\\(AT_FDCWD, )" + #else + # include <sys/syscall.h> + # if defined __NR_stat + # define NR_stat __NR_stat +-# define STAT_FNAME "stat" ++# define STAT_PREFIX "stat\\(" + # elif defined __NR_newstat + # define NR_stat __NR_newstat +-# define STAT_FNAME "newstat" ++# define STAT_PREFIX "newstat\\(" + # endif +-# ifdef STAT_FNAME ++# ifdef STAT_PREFIX + /* for S_IFMT */ + # define stat libc_stat + # define stat64 libc_stat64 +@@ -57,10 +57,10 @@ + # define off_t __kernel_off_t + # define loff_t __kernel_loff_t + # include <asm/stat.h> +-# endif /* STAT_FNAME */ ++# endif /* STAT_PREFIX */ + #endif /* _FILE_OFFSET_BITS */ + +-#ifdef STAT_FNAME ++#ifdef STAT_PREFIX + + static void + print_ftype(unsigned int mode) +@@ -115,7 +115,7 @@ + assert(stat(av[1], &stb) == 0); + #endif + +- printf(STAT_FNAME "\\(\"%s\", \\{", av[1]); ++ printf(STAT_PREFIX "\"%s\", \\{", av[1]); + printf("st_dev=makedev\\(%u, %u\\)", + (unsigned int) major(stb.st_dev), + (unsigned int) minor(stb.st_dev)); +@@ -159,11 +159,15 @@ + printf("(, st_flags=[0-9]+)?"); + printf("(, st_fstype=[^,]*)?"); + printf("(, st_gen=[0-9]+)?"); +- printf("\\}\\) += 0\n"); ++ printf("\\}"); ++#ifndef NR_stat ++ printf("(, 0)?"); ++#endif ++ printf("\\) += 0\n"); + return 0; + } + +-#else /* !STAT_FNAME */ ++#else /* !STAT_PREFIX */ + int main(void) + { + return 77; |