Re: [Maria-developers] innobase/sync0policy.h converts opaque pthread_t to ULINT

2018-04-16 Thread Sergey Vojtovich
Hi Sergei, If you disable just DebugMutex but leave UNIV_DEBUG enabled, how do you make assertions like this work properly: `ut_ad(mutex_own())`? Regards, Sergey On Mon, Apr 16, 2018 at 01:30:33PM +0200, Sergei Golubchik wrote: > Hi, Sergey! > > On Apr 16, Sergey Vojtovich wrote: > > > >

Re: [Maria-developers] innobase/sync0policy.h converts opaque pthread_t to ULINT

2018-04-16 Thread Sergei Golubchik
Hi, Sergey! On Apr 16, Sergey Vojtovich wrote: > > Something similar (HAVE_IB_ATOMIC_PTHREAD_T_GCC) was removed in > 2b47f8ff03845f7ffe2fa3bd583dd4123dae2b61. IIRC the reason was: relevant code > didn't follow this macro properly and this code was still functional. > > You may use

Re: [Maria-developers] innobase/sync0policy.h converts opaque pthread_t to ULINT

2018-04-16 Thread Sergey Vojtovich
Hi! Something similar (HAVE_IB_ATOMIC_PTHREAD_T_GCC) was removed in 2b47f8ff03845f7ffe2fa3bd583dd4123dae2b61. IIRC the reason was: relevant code didn't follow this macro properly and this code was still functional. You may use os_thread_pf(os_thread_get_curr_id()) to cast it to ulint. Yes, it is

Re: [Maria-developers] innobase/sync0policy.h converts opaque pthread_t to ULINT

2018-04-16 Thread Sergei Golubchik
Hi, Teodor! I'd just say that this MutexDebug thing relies on pthread_t being ulint. So, I'd add a test to innodb.cmake, like, PTHREAD_T_IS_ULINT or detected that by the compiler in sync0policy.h. And only compiled MutexDebug is pthread_t is ulint. Or, at least, sizeof(pthread_t) ==