[signal-handled urcu]: add cacheline padding to URCU thread data
authorkhizmax <libcds.dev@gmail.com>
Sun, 23 Apr 2017 17:19:23 +0000 (20:19 +0300)
committerkhizmax <libcds.dev@gmail.com>
Sun, 23 Apr 2017 17:19:23 +0000 (20:19 +0300)
cds/urcu/details/sh_decl.h

index 0d9371d3ff3d25e77ea38b3e0ad60495a5ffc523..dc293e0aa7c80ab8b2fa30f7238fae02282709cf 100644 (file)
@@ -36,6 +36,7 @@
 #ifdef CDS_URCU_SIGNAL_HANDLING_ENABLED
 #include <cds/details/static_functor.h>
 #include <cds/details/lib.h>
+#include <cds/user_setup/cache_line.h>
 
 #include <signal.h>
 
@@ -50,6 +51,7 @@ namespace cds { namespace urcu { namespace details {
         atomics::atomic<uint32_t>        m_nAccessControl ; \
         atomics::atomic<bool>            m_bNeedMemBar    ; \
         thread_list_record< thread_data >   m_list ; \
+        char pad_[cds::c_nCacheLineSize]; \
         thread_data(): m_nAccessControl(0), m_bNeedMemBar(false) {} \
         explicit thread_data( OS::ThreadId owner ): m_nAccessControl(0), m_bNeedMemBar(false), m_list(owner) {} \
         ~thread_data() {} \