Author: Daniel Thornburgh Date: 2024-07-16T12:18:41-07:00 New Revision: 601bd9d8648398ffa1fe69f48304c2369e97e2db
URL: https://github.com/llvm/llvm-project/commit/601bd9d8648398ffa1fe69f48304c2369e97e2db DIFF: https://github.com/llvm/llvm-project/commit/601bd9d8648398ffa1fe69f48304c2369e97e2db.diff LOG: Revert "[compiler-rt] adding preadv2/pwritev2 interceptions. (#97216)" This reverts commit bc1c84aee5b33c30e7bfe1e4a65a64650ec357db. Added: Modified: compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h Removed: compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp ################################################################################ diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc b/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc index 032b04a09ae76..a6066a6226e1b 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc +++ b/compiler-rt/lib/sanitizer_common/sanitizer_common_interceptors.inc @@ -10264,38 +10264,6 @@ INTERCEPTOR(int, cpuset_getaffinity, int level, int which, __int64_t id, SIZE_T #define INIT_CPUSET_GETAFFINITY #endif -#if SANITIZER_INTERCEPT_PREADV2 -INTERCEPTOR(SSIZE_T, preadv2, int fd, __sanitizer_iovec *iov, int iovcnt, - OFF_T offset, int flags) { - void *ctx; - COMMON_INTERCEPTOR_ENTER(ctx, preadv2, fd, iov, iovcnt, offset, flags); - COMMON_INTERCEPTOR_FD_ACCESS(ctx, fd); - SSIZE_T res = REAL(preadv2)(fd, iov, iovcnt, offset, flags); - if (res > 0) write_iovec(ctx, iov, iovcnt, res); - if (res >= 0 && fd >= 0) COMMON_INTERCEPTOR_FD_ACQUIRE(ctx, fd); - return res; -} -#define INIT_PREADV2 COMMON_INTERCEPT_FUNCTION(preadv2) -#else -#define INIT_PREADV2 -#endif - -#if SANITIZER_INTERCEPT_PWRITEV2 -INTERCEPTOR(SSIZE_T, pwritev2, int fd, __sanitizer_iovec *iov, int iovcnt, - OFF_T offset, int flags) { - void *ctx; - COMMON_INTERCEPTOR_ENTER(ctx, pwritev2, fd, iov, iovcnt, offset, flags); - COMMON_INTERCEPTOR_FD_ACCESS(ctx, fd); - if (fd >= 0) COMMON_INTERCEPTOR_FD_RELEASE(ctx, fd); - SSIZE_T res = REAL(pwritev2)(fd, iov, iovcnt, offset, flags); - if (res > 0) read_iovec(ctx, iov, iovcnt, res); - return res; -} -#define INIT_PWRITEV2 COMMON_INTERCEPT_FUNCTION(pwritev2) -#else -#define INIT_PWRITEV2 -#endif - #include "sanitizer_common_interceptors_netbsd_compat.inc" namespace __sanitizer { @@ -10615,8 +10583,6 @@ static void InitializeCommonInterceptors() { INIT___XUNAME; INIT_ARGP_PARSE; INIT_CPUSET_GETAFFINITY; - INIT_PREADV2; - INIT_PWRITEV2; INIT___PRINTF_CHK; } diff --git a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h index c94368b6b0ebb..de55c736d0e14 100644 --- a/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h +++ b/compiler-rt/lib/sanitizer_common/sanitizer_platform_interceptors.h @@ -598,9 +598,6 @@ #define SANITIZER_INTERCEPT_PROCCTL SI_FREEBSD #define SANITIZER_INTERCEPT_ARGP_PARSE SI_GLIBC #define SANITIZER_INTERCEPT_CPUSET_GETAFFINITY SI_FREEBSD -// FIXME: also available from musl 1.2.5 -#define SANITIZER_INTERCEPT_PREADV2 SI_GLIBC -#define SANITIZER_INTERCEPT_PWRITEV2 SI_GLIBC // This macro gives a way for downstream users to override the above // interceptor macros irrespective of the platform they are on. They have diff --git a/compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp b/compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp deleted file mode 100644 index 176347f78ecdc..0000000000000 --- a/compiler-rt/test/sanitizer_common/TestCases/Linux/preadv2.cpp +++ /dev/null @@ -1,28 +0,0 @@ -// RUN: %clangxx -O0 %s -o %t - -// REQUIRES: glibc - -#include <assert.h> -#include <fcntl.h> -#include <sys/uio.h> -#include <unistd.h> - -int main(void) { - int fd = open("/proc/self/stat", O_RDONLY); - char bufa[7]; - char bufb[7]; - struct iovec vec[2]; - vec[0].iov_base = bufa + 4; - vec[0].iov_len = 1; - vec[1].iov_base = bufb; - vec[1].iov_len = sizeof(bufb); - ssize_t rd = preadv2(fd, vec, 2, 0, 0); - assert(rd > 0); - vec[0].iov_base = bufa; - rd = preadv2(fd, vec, 2, 0, 0); - assert(rd > 0); - rd = preadv2(fd, vec, 5, -25, 0); - assert(rd < 0); - close(fd); - return 0; -} _______________________________________________ llvm-branch-commits mailing list llvm-branch-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-branch-commits