]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix tst->os_state.pthread - magic_delta assertion failure on OSX 10.11
authorRhys Kidd <rhyskidd@gmail.com>
Sat, 4 Jun 2016 15:34:56 +0000 (15:34 +0000)
committerRhys Kidd <rhyskidd@gmail.com>
Sat, 4 Jun 2016 15:34:56 +0000 (15:34 +0000)
bz#354883

Whilst I’ve seen different magic_delta values on one of my older development machines (Intel Nehalem-based), enough other users have reported success with this change.

If this causes regressions, please report your hardware details in our Bugzilla.

Regression test output on OS X 10.11

Before:

== 601 tests, 223 stderr failures, 12 stdout failures, 0 stderrB failures, 0 stdoutB failures, 31 post failures ==

After:

== 601 tests, 223 stderr failures, 12 stdout failures, 0 stderrB failures, 0 stdoutB failures, 31 post failures ==

git-svn-id: svn://svn.valgrind.org/valgrind/trunk@15891

NEWS
coregrind/m_syswrap/syswrap-amd64-darwin.c
coregrind/m_syswrap/syswrap-x86-darwin.c

diff --git a/NEWS b/NEWS
index b83d5a8c96b9db4cf03e274a515c52fa7ad31c4b..b76f517097034f2c591218798ba094f8093d2dd5 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -70,6 +70,7 @@ where XXXXXX is the bug number as listed below.
 353920  unhandled amd64-solaris syscall: 170
 354392  unhandled amd64-solaris syscall: 171
 354797  Added vbit tester support for PPC 64 isa 2.07 iops
+354883  tst->os_state.pthread - magic_delta assertion failure on OSX 10.11
 354933  Fix documentation of --kernel-variant=android-no-hw-tls option
 355188  valgrind should intercept all malloc related global functions
 355455  stderr.exp of test cases wrapmalloc and wrapmallocstatic overconstrained
index 8f13e71f8adc91a9b6ee49ba2511715d8522ca07..7fb8b2c6dbc9908bcc2fd18a4e45bd19f9bfefb9 100644 (file)
@@ -479,10 +479,8 @@ void wqthread_hijack(Addr self, Addr kport, Addr stackaddr, Addr workitem,
        UWord magic_delta = 0;
 #      elif DARWIN_VERS == DARWIN_10_7 || DARWIN_VERS == DARWIN_10_8
        UWord magic_delta = 0x60;
-#      elif DARWIN_VERS == DARWIN_10_9 || DARWIN_VERS == DARWIN_10_10
+#      elif DARWIN_VERS == DARWIN_10_9 || DARWIN_VERS == DARWIN_10_10 || DARWIN_VERS == DARWIN_10_11
        UWord magic_delta = 0xE0;
-#      elif DARWIN_VERS == DARWIN_10_11
-       UWord magic_delta = 0x100;
 #      else
 #        error "magic_delta: to be computed on new OS version"
          // magic_delta = tst->os_state.pthread - self
index a9282ee1f7548d1bee637a3f21e374b903248d41..37bbbc3f5be3e5abd953f27dbd02a787e812cc6a 100644 (file)
@@ -427,10 +427,8 @@ void wqthread_hijack(Addr self, Addr kport, Addr stackaddr, Addr workitem,
       UWord magic_delta = 0;
 #     elif DARWIN_VERS == DARWIN_10_7 || DARWIN_VERS == DARWIN_10_8
       UWord magic_delta = 0x48;
-#     elif DARWIN_VERS == DARWIN_10_9 || DARWIN_VERS == DARWIN_10_10
+#     elif DARWIN_VERS == DARWIN_10_9 || DARWIN_VERS == DARWIN_10_10 || DARWIN_VERS == DARWIN_10_11
       UWord magic_delta = 0xB0;
-#     elif DARWIN_VERS == DARWIN_10_11
-      UWord magic_delta = 0x100;
 #     else
 #       error "magic_delta: to be computed on new OS version"
         // magic_delta = tst->os_state.pthread - self