]> git.apps.os.sepia.ceph.com Git - ceph-ci.git/commitdiff
cmake: check for fdatasync() on non osx
authorKefu Chai <kchai@redhat.com>
Wed, 13 Sep 2017 04:17:30 +0000 (12:17 +0800)
committerKefu Chai <kchai@redhat.com>
Sat, 16 Sep 2017 02:43:32 +0000 (10:43 +0800)
on osx, fdatasync() is a syscall without userspace wrapper.

Signed-off-by: Kefu Chai <kchai@redhat.com>
CMakeLists.txt
src/os/filestore/WBThrottle.cc

index f14db6e6e8f28df15b2c52a57b75a8d6e501eea0..ddbbca4606d069cc84337911cf5d4d5d7a1ab966 100644 (file)
@@ -103,7 +103,9 @@ CHECK_FUNCTION_EXISTS(sync_file_range HAVE_SYNC_FILE_RANGE)
 CHECK_FUNCTION_EXISTS(pwritev HAVE_PWRITEV)
 CHECK_FUNCTION_EXISTS(splice CEPH_HAVE_SPLICE)
 CHECK_FUNCTION_EXISTS(getgrouplist HAVE_GETGROUPLIST)
-CHECK_FUNCTION_EXISTS(fdatasync HAVE_FDATASYNC)
+if(NOT APPLE)
+  CHECK_FUNCTION_EXISTS(fdatasync HAVE_FDATASYNC)
+endif()
 CHECK_FUNCTION_EXISTS(strerror_r HAVE_STRERROR_R)
 CHECK_FUNCTION_EXISTS(name_to_handle_at HAVE_NAME_TO_HANDLE_AT)
 CHECK_FUNCTION_EXISTS(pipe2 HAVE_PIPE2)
index 71884445c76a12cee0679e2eaeb607fba94631fe..c45f90ca5e8e6c61dc3506f2c419c4db6acf0d1d 100644 (file)
@@ -165,7 +165,7 @@ void *WBThrottle::entry()
     logger->dec(l_wbthrottle_inodes_dirtied);
     logger->inc(l_wbthrottle_inodes_wb);
     lock.Unlock();
-#ifdef HAVE_FDATASYNC
+#if defined(HAVE_FDATASYNC)
     ::fdatasync(**wb.get<1>());
 #else
     ::fsync(**wb.get<1>());