1 |
vapier 14/04/27 19:03:48 |
2 |
|
3 |
Modified: 010_all_coreutils-tests.patch README.history |
4 |
Added: 025_all_coreutils-cp.patch |
5 |
Log: |
6 |
skip ls/stat-free-color test since sandbox breaks the strace counting #415487 by Toralf Förster |
7 |
|
8 |
Revision Changes Path |
9 |
1.2 src/patchsets/coreutils/8.22/010_all_coreutils-tests.patch |
10 |
|
11 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/010_all_coreutils-tests.patch?rev=1.2&view=markup |
12 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/010_all_coreutils-tests.patch?rev=1.2&content-type=text/plain |
13 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/010_all_coreutils-tests.patch?r1=1.1&r2=1.2 |
14 |
|
15 |
Index: 010_all_coreutils-tests.patch |
16 |
=================================================================== |
17 |
RCS file: /var/cvsroot/gentoo/src/patchsets/coreutils/8.22/010_all_coreutils-tests.patch,v |
18 |
retrieving revision 1.1 |
19 |
retrieving revision 1.2 |
20 |
diff -u -r1.1 -r1.2 |
21 |
--- 010_all_coreutils-tests.patch 16 Dec 2013 07:21:57 -0000 1.1 |
22 |
+++ 010_all_coreutils-tests.patch 27 Apr 2014 19:03:48 -0000 1.2 |
23 |
@@ -24,3 +24,17 @@ |
24 |
timeout 10 dd bs=1 seek=$DEV_OFLOW count=0 status=noxfer > "$device" 2> err |
25 |
test "$?" = "1" || fail=1 |
26 |
echo "dd: 'standard output': cannot seek: Invalid argument |
27 |
+ |
28 |
+running through strace and counting stat syscalls is off when using sandbox |
29 |
+https://bugs.gentoo.org/415487 |
30 |
+--- a/tests/ls/stat-free-color.sh |
31 |
++++ b/tests/ls/stat-free-color.sh |
32 |
+@@ -19,6 +19,8 @@ |
33 |
+ . "${srcdir=.}/tests/init.sh"; path_prepend_ ./src |
34 |
+ print_ver_ ls |
35 |
+ |
36 |
++skip_ 'strace does not work under sandbox #415487' |
37 |
++ |
38 |
+ # Note this list of _file name_ stat functions must be |
39 |
+ # as cross platform as possible and so doesn't include |
40 |
+ # fstatat64 as that's not available on aarch64 for example. |
41 |
|
42 |
|
43 |
|
44 |
1.2 src/patchsets/coreutils/8.22/README.history |
45 |
|
46 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/README.history?rev=1.2&view=markup |
47 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/README.history?rev=1.2&content-type=text/plain |
48 |
diff : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/README.history?r1=1.1&r2=1.2 |
49 |
|
50 |
Index: README.history |
51 |
=================================================================== |
52 |
RCS file: /var/cvsroot/gentoo/src/patchsets/coreutils/8.22/README.history,v |
53 |
retrieving revision 1.1 |
54 |
retrieving revision 1.2 |
55 |
diff -u -r1.1 -r1.2 |
56 |
--- README.history 16 Dec 2013 07:21:57 -0000 1.1 |
57 |
+++ README.history 27 Apr 2014 19:03:48 -0000 1.2 |
58 |
@@ -1,3 +1,6 @@ |
59 |
+1.1 [pending] |
60 |
+ U 010_all_coreutils-tests.patch |
61 |
+ |
62 |
1.0 16 Dec 2013 |
63 |
+ 003_all_coreutils-gentoo-uname.patch |
64 |
+ 010_all_coreutils-tests.patch |
65 |
|
66 |
|
67 |
|
68 |
1.1 src/patchsets/coreutils/8.22/025_all_coreutils-cp.patch |
69 |
|
70 |
file : http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/025_all_coreutils-cp.patch?rev=1.1&view=markup |
71 |
plain: http://sources.gentoo.org/viewvc.cgi/gentoo/src/patchsets/coreutils/8.22/025_all_coreutils-cp.patch?rev=1.1&content-type=text/plain |
72 |
|
73 |
Index: 025_all_coreutils-cp.patch |
74 |
=================================================================== |
75 |
https://bugs.gentoo.org/508638 |
76 |
|
77 |
From d0294ff3b90430750a631556277c75f1a555dd44 Mon Sep 17 00:00:00 2001 |
78 |
From: Paul Eggert <eggert@×××××××.edu> |
79 |
Date: Thu, 3 Apr 2014 09:48:22 -0700 |
80 |
Subject: [PATCH] cp: don't reserve a device number |
81 |
|
82 |
* src/copy.c (copy_internal): Replace dev_t arg DEVICE with struct |
83 |
stat pointer arg PARENT. All callers changed. This removes an |
84 |
unwarranted assumption that dev_t values of 0 cannot occur in file |
85 |
systems. See: http://bugs.gnu.org/17179 |
86 |
--- |
87 |
src/copy.c | 15 +++++++-------- |
88 |
1 file changed, 7 insertions(+), 8 deletions(-) |
89 |
|
90 |
diff --git a/src/copy.c b/src/copy.c |
91 |
index 781cc1e..d471a77 100644 |
92 |
--- a/src/copy.c |
93 |
+++ b/src/copy.c |
94 |
@@ -117,7 +117,7 @@ struct dir_list |
95 |
#define DEST_INFO_INITIAL_CAPACITY 61 |
96 |
|
97 |
static bool copy_internal (char const *src_name, char const *dst_name, |
98 |
- bool new_dst, dev_t device, |
99 |
+ bool new_dst, struct stat const *parent, |
100 |
struct dir_list *ancestors, |
101 |
const struct cp_options *x, |
102 |
bool command_line_arg, |
103 |
@@ -621,7 +621,7 @@ copy_dir (char const *src_name_in, char const *dst_name_in, bool new_dst, |
104 |
char *dst_name = file_name_concat (dst_name_in, namep, NULL); |
105 |
bool first_dir_created = *first_dir_created_per_command_line_arg; |
106 |
|
107 |
- ok &= copy_internal (src_name, dst_name, new_dst, src_sb->st_dev, |
108 |
+ ok &= copy_internal (src_name, dst_name, new_dst, src_sb, |
109 |
ancestors, &non_command_line_options, false, |
110 |
&first_dir_created, |
111 |
&local_copy_into_self, NULL); |
112 |
@@ -1725,9 +1725,8 @@ should_dereference (const struct cp_options *x, bool command_line_arg) |
113 |
/* Copy the file SRC_NAME to the file DST_NAME. The files may be of |
114 |
any type. NEW_DST should be true if the file DST_NAME cannot |
115 |
exist because its parent directory was just created; NEW_DST should |
116 |
- be false if DST_NAME might already exist. DEVICE is the device |
117 |
- number of the parent directory, or 0 if the parent of this file is |
118 |
- not known. ANCESTORS points to a linked, null terminated list of |
119 |
+ be false if DST_NAME might already exist. A nonnull PARENT describes the |
120 |
+ parent directory. ANCESTORS points to a linked, null terminated list of |
121 |
devices and inodes of parent directories of SRC_NAME. COMMAND_LINE_ARG |
122 |
is true iff SRC_NAME was specified on the command line. |
123 |
FIRST_DIR_CREATED_PER_COMMAND_LINE_ARG is both input and output. |
124 |
@@ -1737,7 +1736,7 @@ should_dereference (const struct cp_options *x, bool command_line_arg) |
125 |
static bool |
126 |
copy_internal (char const *src_name, char const *dst_name, |
127 |
bool new_dst, |
128 |
- dev_t device, |
129 |
+ struct stat const *parent, |
130 |
struct dir_list *ancestors, |
131 |
const struct cp_options *x, |
132 |
bool command_line_arg, |
133 |
@@ -2434,7 +2433,7 @@ copy_internal (char const *src_name, char const *dst_name, |
134 |
} |
135 |
|
136 |
/* Decide whether to copy the contents of the directory. */ |
137 |
- if (x->one_file_system && device != 0 && device != src_sb.st_dev) |
138 |
+ if (x->one_file_system && parent && parent->st_dev != src_sb.st_dev) |
139 |
{ |
140 |
/* Here, we are crossing a file system boundary and cp's -x option |
141 |
is in effect: so don't copy the contents of this directory. */ |
142 |
@@ -2827,7 +2826,7 @@ copy (char const *src_name, char const *dst_name, |
143 |
top_level_dst_name = dst_name; |
144 |
|
145 |
bool first_dir_created_per_command_line_arg = false; |
146 |
- return copy_internal (src_name, dst_name, nonexistent_dst, 0, NULL, |
147 |
+ return copy_internal (src_name, dst_name, nonexistent_dst, NULL, NULL, |
148 |
options, true, |
149 |
&first_dir_created_per_command_line_arg, |
150 |
copy_into_self, rename_succeeded); |
151 |
-- |
152 |
1.9.2 |