]> git.ipfire.org Git - thirdparty/valgrind.git/commitdiff
Fix UNKNOWN fcntl 97 on OS X 10.11
authorRhys Kidd <rhyskidd@gmail.com>
Thu, 3 Sep 2015 11:31:58 +0000 (11:31 +0000)
committerRhys Kidd <rhyskidd@gmail.com>
Thu, 3 Sep 2015 11:31:58 +0000 (11:31 +0000)
bz#351632

On OS X 10.11 (DP8)

Before:

== 595 tests, 575 stderr failures, 10 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==

After:

== 595 tests, 219 stderr failures, 9 stdout failures, 0 stderrB failures, 0 stdoutB failures, 30 post failures ==

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

NEWS
coregrind/m_syswrap/syswrap-darwin.c
include/vki/vki-darwin.h

diff --git a/NEWS b/NEWS
index 7699b4578402a196e33db0deb9ad55d20dae2f8f..a03b403b7f19fb5ca76ac3b05265e1bce1b651a5 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -367,6 +367,7 @@ where XXXXXX is the bug number as listed below.
 351386  Solaris: Cannot run ld.so.1 under Valgrind
 351474  Fix VG_(iseqsigset) as obvious
 351534  Fix incorrect header guard
+351632  Fix UNKNOWN fcntl 97 on OS X 10.11
 351756  Intercept platform_memchr$VARIANT$Haswell on OS X
 351858  ldsoexec support on Solaris
 351873  Newer gcc doesn't allow __builtin_tabortdc[i] in ppc32 mode
index a6407bcbfdf13ad633ad04b60e563c985225c618..e7297cd83bfb24402c8fd1ab59ba8d08f8ab036c 100644 (file)
@@ -1528,6 +1528,11 @@ static const HChar *name_for_fcntl(UWord cmd) {
       F(F_ADDSIGS);
 #     if DARWIN_VERS >= DARWIN_10_9
       F(F_ADDFILESIGS);
+#     endif
+#     if DARWIN_VERS >= DARWIN_10_11
+      F(F_ADDFILESIGS_FOR_DYLD_SIM);
+      F(F_BARRIERFSYNC);
+      F(F_ADDFILESIGS_RETURN);
 #     endif
    default:
       return "UNKNOWN";
@@ -1711,6 +1716,22 @@ PRE(fcntl)
       }
       break;
 
+#  if DARWIN_VERS >= DARWIN_10_11
+   case VKI_F_ADDFILESIGS_FOR_DYLD_SIM: /* Add signature from same file, only if it is signed
+                                           by Apple used by dyld for simulator */
+      // FIXME: RK
+      break;
+
+   case VKI_F_BARRIERFSYNC: /* fsync + issue barrier to drive */
+      // FIXME: RK
+      break;
+
+   case VKI_F_ADDFILESIGS_RETURN: /* Add signature from same file, return end offset in 
+                                     structure on success */
+      // FIXME: RK
+      break;
+#  endif
+
    default:
       PRINT("fcntl ( %lu, %lu [??] )", ARG1, ARG2);
       log_decaying("UNKNOWN fcntl %lu!", ARG2);
index 50847ddf39be99ab3a14cfefffe667e62351a976..49d0d4c9afdac0a4ed13bdfb871f0d5b55d82fae 100644 (file)
@@ -304,6 +304,11 @@ typedef uint32_t vki_u32;
 #if DARWIN_VERS >= DARWIN_10_9
 # define VKI_F_ADDFILESIGS  F_ADDFILESIGS
 #endif
+#if DARWIN_VERS >= DARWIN_10_11
+# define VKI_F_ADDFILESIGS_FOR_DYLD_SIM  F_ADDFILESIGS_FOR_DYLD_SIM
+# define VKI_F_BARRIERFSYNC              F_BARRIERFSYNC
+# define VKI_F_ADDFILESIGS_RETURN        F_ADDFILESIGS_RETURN
+#endif
 #define VKI_F_FULLFSYNC        F_FULLFSYNC
 #define VKI_F_PATHPKG_CHECK    F_PATHPKG_CHECK
 #define VKI_F_FREEZE_FS        F_FREEZE_FS