maria-developers team mailing list archive
Mailing list archive
Re: [Commits] Rev 4346: MDEV-7026 - Occasional hang during startup on Power8 in lp:maria/5.5
> Since isync is not a memory barrier and lwsync doesn't guarantee
> order, the only option we have is full memory barrier.
> === modified file 'storage/innobase/include/os0sync.h'
> --- a/storage/innobase/include/os0sync.h 2014-09-08 15:10:48 +0000
> +++ b/storage/innobase/include/os0sync.h 2014-11-18 08:07:42 +0000
> #ifdef __powerpc__
> -# define os_isync __asm __volatile ("isync":::"memory")
> +# define os_isync __atomic_thread_fence(__ATOMIC_SEQ_CST)
you have to rename to the #define too (e.g to os_mb).
having a os_isync which is infact a mb is more obfuscation
than anyone should have to put up with.