Up

Traces

linux[3.13.0-29-generic][system[GNU C Library (GNU libc) stable release version 2.21, by Roland McGrath et al.]][ext4_loop[mke2fs 1.42.9 (4-Feb-2014)]]@[2015-07-24T13:23:26Z./nix/store/fxisrpncjn4cxxwnq2lvilriqx63s9k9-fs_test]

Checked Trace
linux_spec@[/nix/store/fxisrpncjn4cxxwnq2lvilriqx63s9k9-fs_test] sexp stdout stderr
Traced Execution stdout stderr
Script script

Combined Trace

1 # processing file 'adhoc_file_descriptor_change_tests-int.trace' ...
2 @type trace
3 # Tests for a file underlying a file-descriptor
4 # being modified while the descriptor is open
5
6 # create a file with some content
7 open "f1.txt" [O_CREAT;O_RDWR] 0o644
8 Tau
9 RV_num(3)
10 write! (FD 3) "0123456789" 10
11 Tau
12 RV_num(10)
13
14 open "f1.txt" [O_RDONLY]
15 Tau
16 RV_num(4)
17 # check we are at the beginning
18 read! (FD 4) 100
19 Tau
20 RV_bytes("0123456789")
21
22 # check lseek to FD 4 does not affect FD 3
23 lseek (FD 4) 0 SEEK_SET
24 Tau
25 RV_num(0)
26 write! (FD 3) "AB" 2
27 Tau
28 RV_num(2)
29
30 # but content is present in both
31 pread! (FD 3) 100 0
32 Tau
33 RV_bytes("0123456789AB")
34 pread! (FD 4) 100 0
35 Tau
36 RV_bytes("0123456789AB")
37
38 close (FD 3)
39 Tau
40 RV_none
41 close (FD 4)
42 Tau
43 RV_none
44
45
46
47 # open f1, then delete it
48 open "f1.txt" [O_RDWR]
49 Tau
50 RV_num(3)
51 open "f1.txt" [O_RDONLY]
52 Tau
53 RV_num(4)
54 unlink "f1.txt"
55 Tau
56 RV_none
57 pread! (FD 3) 100 0
58 Tau
59 RV_bytes("0123456789AB")
60 pread! (FD 4) 100 0
61 Tau
62 RV_bytes("0123456789AB")
63
64 open_close "f1.txt" [O_RDONLY]
65 Tau
66 ENOENT
67
68 open "f1.txt" [O_EXCL;O_CREAT;O_RDWR] 0o644
69 Tau
70 RV_num(5)
71 read! (FD 5) 100
72 Tau
73 RV_bytes("")
74 write! (FD 5) "can't stop, won't stop" 22
75 Tau
76 RV_num(22)
77 close (FD 5)
78 Tau
79 RV_none
80
81 pwrite! (FD 3) "___" 3 3
82 Tau
83 RV_num(3)
84
85 close (FD 3)
86 Tau
87 RV_none
88
89 pread! (FD 4) 100 0
90 Tau
91 RV_bytes("012___6789AB")
92 close (FD 4)
93 Tau
94 RV_none
95
96 open "f1.txt" [O_RDONLY] 0o644
97 Tau
98 RV_num(3)
99 read! (FD 3) 100
100 Tau
101 RV_bytes("can't stop, won't stop")
102 close (FD 3)
103 Tau
104 RV_none
105
106 unlink "f1.txt"
107 Tau
108 RV_none
109
110 # open f1, then rename it
111 open "f1.txt" [O_CREAT;O_RDWR] 0o644
112 Tau
113 RV_num(3)
114 write! (FD 3) "0123456789" 10
115 Tau
116 RV_num(10)
117 close (FD 3)
118 Tau
119 RV_none
120
121 open "f1.txt" [O_RDONLY]
122 Tau
123 RV_num(3)
124 rename "f1.txt" "f2.txt"
125 Tau
126 RV_none
127 pread! (FD 3) 100 0
128 Tau
129 RV_bytes("0123456789")
130
131 open_close "f1.txt" [O_RDONLY]
132 Tau
133 ENOENT
134 open "f2.txt" [O_RDONLY]
135 Tau
136 RV_num(4)
137 pread! (FD 4) 100 0
138 Tau
139 RV_bytes("0123456789")
140 close (FD 4)
141 Tau
142 RV_none
143 close (FD 3)
144 Tau
145 RV_none
146
147
148