This should be an unlock_user_struct to match the lock_user_struct. Didn't change the writeback to '1' since the tcmpset_32 writes to target memory and we don't need to write again.
Signed-off-by: Warner Losh <[email protected]> --- bsd-user/freebsd/os-thread.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bsd-user/freebsd/os-thread.c b/bsd-user/freebsd/os-thread.c index b91e0d32b0..7c3256a87e 100644 --- a/bsd-user/freebsd/os-thread.c +++ b/bsd-user/freebsd/os-thread.c @@ -474,7 +474,7 @@ abi_long freebsd_umtx_mutex_wake2(abi_ulong target_addr, uint32_t flags) } pthread_mutex_unlock(&umtx_wait_lck); addr = g2h_untagged((uintptr_t)&target_umutex->m_owner); - unlock_user(target_umutex, target_addr, 0); + unlock_user_struct(target_umutex, target_addr, 0); return get_errno(safe__umtx_op(addr, UMTX_OP_WAKE_PRIVATE, 1, NULL, NULL)); -- 2.52.0
