From: Noah Watkins Date: Sun, 29 Dec 2013 20:59:15 +0000 (-0800) Subject: test: print warning about missing fs features X-Git-Tag: v0.75~20^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=a625b2804dc7b553202ba38d1a60a06e9ab10563;p=ceph.git test: print warning about missing fs features - sync - posix_fadvise Signed-off-by: Noah Watkins --- diff --git a/src/test/bench/dumb_backend.cc b/src/test/bench/dumb_backend.cc index c36dce392da6..bf78ab22572e 100644 --- a/src/test/bench/dumb_backend.cc +++ b/src/test/bench/dumb_backend.cc @@ -1,5 +1,7 @@ // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +#include "acconfig.h" + #include #include "dumb_backend.h" @@ -34,15 +36,23 @@ void DumbBackend::_write( on_applied->complete(0); if (do_fsync) ::fsync(fd); +#ifdef HAVE_SYNC_FILE_RANGE if (do_sync_file_range) ::sync_file_range(fd, offset, bl.length(), SYNC_FILE_RANGE_WAIT_AFTER); +#else +# warning "sync_file_range not supported!" +#endif +#ifdef HAVE_POSIX_FADVISE if (do_fadvise) { int fa_r = ::posix_fadvise(fd, offset, bl.length(), POSIX_FADV_DONTNEED); if (fa_r) { std::cout << "posix_fadvise failed, errno is: " << fa_r << std::endl; } } +#else +# warning "posix_fadvise not supported!" +#endif ::close(fd); { Mutex::Locker l(pending_commit_mutex); diff --git a/src/test/bench/small_io_bench_dumb.cc b/src/test/bench/small_io_bench_dumb.cc index 6d79fdd53d04..73841c3c6e40 100644 --- a/src/test/bench/small_io_bench_dumb.cc +++ b/src/test/bench/small_io_bench_dumb.cc @@ -1,5 +1,7 @@ // -*- mode:C++; tab-width:8; c-basic-offset:2; indent-tabs-mode:t -*- +#include "acconfig.h" + #include #include #include @@ -191,6 +193,16 @@ int main(int argc, char **argv) ); } +#ifndef HAVE_SYNC_FILE_RANGE + if (vm["sync-file-range"].as()) + std::cerr << "Warning: sync_file_range(2) not supported!" << std::endl; +#endif + +#ifndef HAVE_POSIX_FADVISE + if (vm["fadvise"].as()) + std::cerr << "Warning: posix_fadvise(2) not supported!" << std::endl; +#endif + Bencher bencher( gen, new DetailedStatCollector(1, new JSONFormatter, detailed_ops, &cout),