--- a/libc/inet/resolv.c
+++ b/libc/inet/resolv.c
@@ -3654,11 +3654,11 @@ res_init(void)
 	 */
 	if (!_res.id)
 		_res.id = res_randomid();
-	__res_sync = res_sync_func;
 
 	__UCLIBC_MUTEX_UNLOCK(__resolv_lock);
 
 	__res_vinit(&_res, 1);
+	__res_sync = res_sync_func;
 
 	return 0;
 }