From: John Spray Date: Wed, 27 Jul 2016 11:18:50 +0000 (+0100) Subject: test: break out librados-using cephfs test X-Git-Tag: ses5-milestone5~199^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=268a47163274205774c2a08f511859bb640ad0ef;p=ceph.git test: break out librados-using cephfs test We are seeing an issue due to the lockdep symbols in libcephfs and librados clashing, which shows itself after a fork in the flock tests. We can avoid this by splitting the libcephfs tests that require librados (access.cc) into their own compilation unit so that the flock tests can run in a libcephfs-only process. Fixes: http://tracker.ceph.com/issues/16556 Signed-off-by: John Spray --- diff --git a/qa/workunits/libcephfs/test.sh b/qa/workunits/libcephfs/test.sh index 4a501e070c31..899fe40c3a49 100755 --- a/qa/workunits/libcephfs/test.sh +++ b/qa/workunits/libcephfs/test.sh @@ -1,5 +1,6 @@ #!/bin/sh -e ceph_test_libcephfs +ceph_test_libcephfs_access exit 0 diff --git a/src/test/libcephfs/CMakeLists.txt b/src/test/libcephfs/CMakeLists.txt index b2e511ea51d4..dac0407f77e0 100644 --- a/src/test/libcephfs/CMakeLists.txt +++ b/src/test/libcephfs/CMakeLists.txt @@ -6,18 +6,32 @@ if(${WITH_CEPHFS}) multiclient.cc flock.cc acl.cc - access.cc ) set_target_properties(ceph_test_libcephfs PROPERTIES COMPILE_FLAGS ${UNITTEST_CXX_FLAGS}) target_link_libraries(ceph_test_libcephfs cephfs - librados ${UNITTEST_LIBS} ${EXTRALIBS} ${CMAKE_DL_LIBS} ) install(TARGETS ceph_test_libcephfs DESTINATION ${CMAKE_INSTALL_BINDIR}) + + add_executable(ceph_test_libcephfs_access + test.cc + access.cc + ) + set_target_properties(ceph_test_libcephfs_access PROPERTIES COMPILE_FLAGS + ${UNITTEST_CXX_FLAGS}) + target_link_libraries(ceph_test_libcephfs_access + cephfs + librados + ${UNITTEST_LIBS} + ${EXTRALIBS} + ${CMAKE_DL_LIBS} + ) + install(TARGETS ceph_test_libcephfs_access + DESTINATION ${CMAKE_INSTALL_BINDIR}) endif(${WITH_CEPHFS}) diff --git a/src/test/libcephfs/access.cc b/src/test/libcephfs/access.cc index c47be54929fa..087306f3506e 100644 --- a/src/test/libcephfs/access.cc +++ b/src/test/libcephfs/access.cc @@ -72,7 +72,7 @@ int do_mon_command(string s, string *key) string get_unique_dir() { - return string("/ceph_test_libcephfs.") + stringify(rand()); + return string("/ceph_test_libcephfs_access.") + stringify(rand()); } TEST(AccessTest, Foo) {