namespace cds_others {
-size_t BackoffTraits::lower_bound = 16;
-size_t BackoffTraits::upper_bound = 1024;
-
// Forward declaration
struct mcs_node;
struct mcs_mutex;
seqlock_driver.cpp
rwlock_driver.cpp
mcslock_driver.cpp
+ backoff.cpp
)
include_directories(
--- /dev/null
+#include "common.h"
+#include <atomic>
+#include <cds/gc/dhp.h>
+#include <cds/gc/hp.h>
+#include <cds/misc/backoff.h>
+#include <cds_test/stress_test.h>
+#include <iostream>
+#include <memory>
+
+namespace cds_others {
+
+size_t BackoffTraits::lower_bound = 16;
+size_t BackoffTraits::upper_bound = 1024;
+
+} // namespace cds_others
set(PACKAGE_NAME stress-sequential-misc)
-set(CDSSTRESS_STACK_SOURCES
+set(CDSSTRESS_MISC_SOURCES
main.cpp
rigtorp_spsc_driver.cpp
rigtorp_mpmc_driver.cpp
seqlock_driver.cpp
rwlock_driver.cpp
mcslock_driver.cpp
+ backoff.cpp
)
include_directories(
${CMAKE_CURRENT_SOURCE_DIR}
)
-add_executable(${PACKAGE_NAME} ${CDSSTRESS_STACK_SOURCES})
+add_executable(${PACKAGE_NAME} ${CDSSTRESS_MISC_SOURCES})
target_link_libraries(${PACKAGE_NAME} ${CDS_TEST_LIBRARIES} ${CDSSTRESS_FRAMEWORK_LIBRARY})
add_test(NAME ${PACKAGE_NAME} COMMAND ${PACKAGE_NAME} WORKING_DIRECTORY ${EXECUTABLE_OUTPUT_PATH})
--- /dev/null
+#include "common.h"
+#include <atomic>
+#include <cds/gc/dhp.h>
+#include <cds/gc/hp.h>
+#include <cds/misc/backoff.h>
+#include <cds_test/stress_test.h>
+#include <iostream>
+#include <memory>
+
+namespace cds_others {
+
+size_t BackoffTraits::lower_bound = 16;
+size_t BackoffTraits::upper_bound = 1024;
+
+} // namespace cds_others
ullong MCSLockTest::x;
TEST_F(MCSLockTest, MCSLock) {
+ cds_others::BackoffTraits::lower_bound = 16;
+ cds_others::BackoffTraits::upper_bound = 1024;
std::unique_ptr<cds_others::mcs_mutex> my_mutex(new cds_others::mcs_mutex());
cds_others::mcs_mutex::guard g(my_mutex.get());
my_mutex->unlock(&g);