forked from OSchip/llvm-project
Revert "[sanitizer] Intercept sched_getaffinity."
This reverts commit r187788. The test case is unreliable (as the test may be run in a situation in which it has no affinity with cpu0). This can be recommitted with a more reliable test - possibly using CPU_COUNT != 0 instead (I wasn't entirely sure that a process was guaranteed to have at least one affinity, though it seems reasonable, or I'd have made the change myself). llvm-svn: 187841
This commit is contained in:
parent
0a0faa98d1
commit
787e2b6499
|
@ -2054,13 +2054,6 @@ TEST(MemorySanitizer, dlopenFailed) {
|
|||
|
||||
#endif // MSAN_TEST_DISABLE_DLOPEN
|
||||
|
||||
TEST(MemorySanitizer, sched_getaffinity) {
|
||||
cpu_set_t mask;
|
||||
int res = sched_getaffinity(getpid(), sizeof(mask), &mask);
|
||||
ASSERT_EQ(0, res);
|
||||
ASSERT_TRUE(CPU_ISSET(0, &mask));
|
||||
}
|
||||
|
||||
TEST(MemorySanitizer, scanf) {
|
||||
const char *input = "42 hello";
|
||||
int* d = new int;
|
||||
|
|
|
@ -1762,20 +1762,6 @@ INTERCEPTOR(SIZE_T, confstr, int name, char *buf, SIZE_T len) {
|
|||
#define INIT_CONFSTR
|
||||
#endif
|
||||
|
||||
#if SANITIZER_INTERCEPT_SCHED_GETAFFINITY
|
||||
INTERCEPTOR(int, sched_getaffinity, int pid, SIZE_T cpusetsize, void *mask) {
|
||||
void *ctx;
|
||||
COMMON_INTERCEPTOR_ENTER(ctx, sched_getaffinity, pid, cpusetsize, mask);
|
||||
int res = REAL(sched_getaffinity)(pid, cpusetsize, mask);
|
||||
if (mask && !res)
|
||||
COMMON_INTERCEPTOR_WRITE_RANGE(ctx, mask, cpusetsize);
|
||||
return res;
|
||||
}
|
||||
#define INIT_SCHED_GETAFFINITY INTERCEPT_FUNCTION(sched_getaffinity);
|
||||
#else
|
||||
#define INIT_SCHED_GETAFFINITY
|
||||
#endif
|
||||
|
||||
#define SANITIZER_COMMON_INTERCEPTORS_INIT \
|
||||
INIT_STRCMP; \
|
||||
INIT_STRNCMP; \
|
||||
|
@ -1835,5 +1821,4 @@ INTERCEPTOR(int, sched_getaffinity, int pid, SIZE_T cpusetsize, void *mask) {
|
|||
INIT_TCGETATTR; \
|
||||
INIT_REALPATH; \
|
||||
INIT_CANONICALIZE_FILE_NAME; \
|
||||
INIT_CONFSTR; \
|
||||
INIT_SCHED_GETAFFINITY;
|
||||
INIT_CONFSTR;
|
||||
|
|
|
@ -110,6 +110,5 @@
|
|||
# define SANITIZER_INTERCEPT_REALPATH SI_NOT_WINDOWS
|
||||
# define SANITIZER_INTERCEPT_CANONICALIZE_FILE_NAME SI_LINUX_NOT_ANDROID
|
||||
# define SANITIZER_INTERCEPT_CONFSTR SI_MAC || SI_LINUX_NOT_ANDROID
|
||||
# define SANITIZER_INTERCEPT_SCHED_GETAFFINITY SI_LINUX_NOT_ANDROID
|
||||
|
||||
#endif // #ifndef SANITIZER_PLATFORM_INTERCEPTORS_H
|
||||
|
|
|
@ -353,7 +353,6 @@ void StatOutput(u64 *stat) {
|
|||
name[StatInt_realpath] = " realpath ";
|
||||
name[StatInt_canonicalize_file_name] = " canonicalize_file_name ";
|
||||
name[StatInt_confstr] = " confstr ";
|
||||
name[StatInt_sched_getaffinity] = " sched_getaffinity ";
|
||||
|
||||
name[StatAnnotation] = "Dynamic annotations ";
|
||||
name[StatAnnotateHappensBefore] = " HappensBefore ";
|
||||
|
|
|
@ -348,7 +348,6 @@ enum StatType {
|
|||
StatInt_realpath,
|
||||
StatInt_canonicalize_file_name,
|
||||
StatInt_confstr,
|
||||
StatInt_sched_getaffinity,
|
||||
|
||||
// Dynamic annotations.
|
||||
StatAnnotation,
|
||||
|
|
Loading…
Reference in New Issue