Skip to content

Commit 0cc523f

Browse files
Revert "Add all read/write functions to the interceptors list (#17)" (#18)
This reverts commit fd40d88.
1 parent fd40d88 commit 0cc523f

File tree

2 files changed

+2
-128
lines changed

2 files changed

+2
-128
lines changed

compiler-rt/lib/radsan/radsan_interceptors.cpp

Lines changed: 0 additions & 44 deletions
Original file line numberDiff line numberDiff line change
@@ -102,41 +102,6 @@ INTERCEPTOR(size_t, fread, void *ptr, size_t size, size_t nitems,
102102
return REAL(fread)(ptr, size, nitems, stream);
103103
}
104104

105-
INTERCEPTOR(ssize_t, read, int fd, void *buf, size_t count) {
106-
radsan::expectNotRealtime("read");
107-
return REAL(read)(fd, buf, count);
108-
}
109-
110-
// intercept write
111-
INTERCEPTOR(ssize_t, write, int fd, const void *buf, size_t count) {
112-
radsan::expectNotRealtime("write");
113-
return REAL(write)(fd, buf, count);
114-
}
115-
116-
#if SANITIZER_APPLE
117-
INTERCEPTOR(ssize_t, pread, int fd, void *buf, size_t count, off_t offset) {
118-
radsan::expectNotRealtime("pread");
119-
return REAL(pread)(fd, buf, count, offset);
120-
}
121-
122-
INTERCEPTOR(ssize_t, readv, int fd, const struct iovec *iov, int iovcnt) {
123-
radsan::expectNotRealtime("readv");
124-
return REAL(readv)(fd, iov, iovcnt);
125-
}
126-
127-
INTERCEPTOR(ssize_t, pwrite, int fd, const void *buf, size_t count,
128-
off_t offset) {
129-
radsan::expectNotRealtime("pwrite");
130-
return REAL(pwrite)(fd, buf, count, offset);
131-
}
132-
133-
INTERCEPTOR(ssize_t, writev, int fd, const struct iovec *iov, int iovcnt) {
134-
radsan::expectNotRealtime("writev");
135-
return REAL(writev)(fd, iov, iovcnt);
136-
}
137-
138-
#endif // SANITIZER_APPLE
139-
140105
INTERCEPTOR(size_t, fwrite, const void *ptr, size_t size, size_t nitems,
141106
FILE *stream) {
142107
radsan::expectNotRealtime("fwrite");
@@ -403,15 +368,6 @@ void initialiseInterceptors() {
403368
INTERCEPT_FUNCTION(close);
404369
INTERCEPT_FUNCTION(fopen);
405370
INTERCEPT_FUNCTION(fread);
406-
INTERCEPT_FUNCTION(read);
407-
INTERCEPT_FUNCTION(write);
408-
#if SANITIZER_APPLE
409-
INTERCEPT_FUNCTION(pread);
410-
INTERCEPT_FUNCTION(readv);
411-
INTERCEPT_FUNCTION(pwrite);
412-
INTERCEPT_FUNCTION(writev);
413-
#endif
414-
415371
INTERCEPT_FUNCTION(fwrite);
416372
INTERCEPT_FUNCTION(fclose);
417373
INTERCEPT_FUNCTION(fcntl);

compiler-rt/lib/radsan/tests/radsan_test_interceptors.cpp

Lines changed: 2 additions & 84 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,6 @@
1616
#if SANITIZER_APPLE
1717
#include <libkern/OSAtomic.h>
1818
#include <os/lock.h>
19-
#include <sys/types.h>
20-
#include <sys/uio.h>
21-
#include <unistd.h>
2219
#endif
2320

2421
#if SANITIZER_INTERCEPT_MEMALIGN || SANITIZER_INTERCEPT_PVALLOC
@@ -204,7 +201,6 @@ TEST(TestRadsanInterceptors, closeDiesWhenRealtime) {
204201
TEST(TestRadsanInterceptors, fopenDiesWhenRealtime) {
205202
auto func = []() {
206203
auto fd = fopen(temporary_file_path(), "w");
207-
// Avoid fopen being dead-code eliminated
208204
EXPECT_THAT(fd, Ne(nullptr));
209205
};
210206
expectRealtimeDeath(func, "fopen");
@@ -225,83 +221,6 @@ TEST(TestRadsanInterceptors, freadDiesWhenRealtime) {
225221
std::remove(temporary_file_path());
226222
}
227223

228-
class FdFixture : public ::testing::Test {
229-
protected:
230-
int fd = -1;
231-
232-
void SetUp() override {
233-
fd = open(temporary_file_path(), O_RDWR | O_CREAT, S_IRUSR | S_IWUSR);
234-
ASSERT_TRUE(fd != -1) << "Failed to open file";
235-
}
236-
237-
void TearDown() override {
238-
if (fd != -1)
239-
{
240-
close(fd);
241-
remove(temporary_file_path());
242-
}
243-
}
244-
};
245-
246-
TEST_F(FdFixture, readDiesWhenRealtime) {
247-
auto func = [this]() {
248-
char c{};
249-
read(fd, &c, 1);
250-
};
251-
expectRealtimeDeath(func, "read");
252-
expectNonrealtimeSurvival(func);
253-
}
254-
255-
TEST_F(FdFixture, writeDiesWhenRealtime) {
256-
auto func = [this]() {
257-
char c{};
258-
write(fd, &c, 1);
259-
};
260-
expectRealtimeDeath(func, "write");
261-
expectNonrealtimeSurvival(func);
262-
}
263-
264-
#if SANITIZER_APPLE
265-
TEST_F(FdFixture, preadDiesWhenRealtime) {
266-
auto func = [this]() {
267-
char c{};
268-
pread(fd, &c, 1, 0);
269-
};
270-
expectRealtimeDeath(func, "pread");
271-
expectNonrealtimeSurvival(func);
272-
}
273-
274-
TEST_F(FdFixture, readvDiesWhenRealtime) {
275-
auto func = [this]() {
276-
char c{};
277-
iovec iov = {&c, 1};
278-
readv(fd, &iov, 1);
279-
};
280-
expectRealtimeDeath(func, "readv");
281-
expectNonrealtimeSurvival(func);
282-
}
283-
284-
TEST_F(FdFixture, pwriteDiesWhenRealtime) {
285-
auto func = [this]() {
286-
char c{};
287-
pwrite(fd, &c, 1, 0);
288-
};
289-
expectRealtimeDeath(func, "pwrite");
290-
expectNonrealtimeSurvival(func);
291-
}
292-
293-
TEST_F(FdFixture, writevDiesWhenRealtime) {
294-
auto func = [this]() {
295-
char c{};
296-
iovec iov = {&c, 1};
297-
writev(fd, &iov, 1);
298-
};
299-
expectRealtimeDeath(func, "writev");
300-
expectNonrealtimeSurvival(func);
301-
}
302-
303-
#endif // SANITIZER_APPLE
304-
305224
TEST(TestRadsanInterceptors, fwriteDiesWhenRealtime) {
306225
auto fd = fopen(temporary_file_path(), "w");
307226
ASSERT_NE(nullptr, fd);
@@ -314,7 +233,7 @@ TEST(TestRadsanInterceptors, fwriteDiesWhenRealtime) {
314233

315234
TEST(TestRadsanInterceptors, fcloseDiesWhenRealtime) {
316235
auto fd = fopen(temporary_file_path(), "w");
317-
EXPECT_THAT(fd, Ne(nullptr)); // Avoids DCE
236+
EXPECT_THAT(fd, Ne(nullptr));
318237
auto func = [fd]() { fclose(fd); };
319238
expectRealtimeDeath(func, "fclose");
320239
expectNonrealtimeSurvival(func);
@@ -406,8 +325,7 @@ TEST(TestRadsanInterceptors, osUnfairLockLockDiesWhenRealtime) {
406325
expectRealtimeDeath(func, "os_unfair_lock_lock");
407326
expectNonrealtimeSurvival(func);
408327
}
409-
410-
#endif // SANITIZER_APPLE
328+
#endif
411329

412330
#if SANITIZER_LINUX
413331
TEST(TestRadsanInterceptors, spinLockLockDiesWhenRealtime) {

0 commit comments

Comments
 (0)