Tatsuyuki Ishi (@ishitatsuyuki) commented about dlls/ntdll/unix/virtual.c:
+static BOOL try_exp_membarrier( void ) +{ + pthread_once(&membarrier_init_once, membarrier_init); + if (!membarrier_exp_available) + return FALSE; + return !membarrier( MEMBARRIER_CMD_PRIVATE_EXPEDITED, 0, 0 ); +} + +#else /* defined(__linux__) && defined(__NR_membarrier) */ + +static BOOL try_exp_membarrier( void ) { return FALSE; } + +#endif /* defined(__linux__) && defined(__NR_membarrier) */ + + +static BOOL try_heavy_membarrier_fallback(void) Let's rename this to something that doesn't mention `membarrier` to avoid confusion with the non-expedited membarrier() syscall which has unacceptable delays.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/7250#note_93449