Merge "greylist is no longer enabled by default."
diff --git a/libc/bionic/libc_init_common.cpp b/libc/bionic/libc_init_common.cpp
index d267b68..e051762 100644
--- a/libc/bionic/libc_init_common.cpp
+++ b/libc/bionic/libc_init_common.cpp
@@ -70,7 +70,9 @@
__LIBC_HIDDEN__ void* __libc_sysinfo = reinterpret_cast<void*>(__libc_int0x80);
__LIBC_HIDDEN__ void __libc_init_sysinfo(KernelArgumentBlock& args) {
- __libc_sysinfo = reinterpret_cast<void*>(args.getauxval(AT_SYSINFO));
+ // Running under valgrind, AT_SYSINFO won't be set.
+ void* at_sysinfo = reinterpret_cast<void*>(args.getauxval(AT_SYSINFO));
+ if (at_sysinfo != nullptr) __libc_sysinfo = at_sysinfo;
}
// TODO: lose this function and just access __libc_sysinfo directly.
diff --git a/tests/dlfcn_test.cpp b/tests/dlfcn_test.cpp
index 0ec4663..4901d50 100644
--- a/tests/dlfcn_test.cpp
+++ b/tests/dlfcn_test.cpp
@@ -310,12 +310,7 @@
dlclose(handle);
}
-// ld.gold for arm produces incorrect binary (see http://b/27930475 for details)
-#if defined(__arm__)
-TEST(dlfcn, KNOWN_FAILURE_ON_BIONIC(ifunc_ctor_call)) {
-#else
TEST(dlfcn, ifunc_ctor_call) {
-#endif
typedef const char* (*fn_ptr)();
void* handle = dlopen("libtest_ifunc.so", RTLD_NOW);
@@ -330,12 +325,7 @@
dlclose(handle);
}
-// ld.gold for arm produces incorrect binary (see http://b/27930475 for details)
-#if defined(__arm__)
-TEST(dlfcn, KNOWN_FAILURE_ON_BIONIC(ifunc_ctor_call_rtld_lazy)) {
-#else
TEST(dlfcn, ifunc_ctor_call_rtld_lazy) {
-#endif
typedef const char* (*fn_ptr)();
void* handle = dlopen("libtest_ifunc.so", RTLD_LAZY);