diff --git a/src/runtime/os_fuchsia.go b/src/runtime/os_fuchsia.go
index 3f01c71..856ef9a 100644
--- a/src/runtime/os_fuchsia.go
+++ b/src/runtime/os_fuchsia.go
@@ -24,7 +24,7 @@
 	if ns < 0 {
 		deadline = zx.Time(zx.TimensecInfinite)
 	}
-	zx.Sys_futex_wait_deprecated((*int32)(unsafe.Pointer(addr)), int32(val), deadline)
+	zx.Sys_futex_wait((*int32)(unsafe.Pointer(addr)), int32(val), zx.HandleInvalid, deadline)
 }
 
 //go:nosplit
diff --git a/src/runtime/vdso_keys_fuchsia.go b/src/runtime/vdso_keys_fuchsia.go
index c52d352..ba5b51b 100644
--- a/src/runtime/vdso_keys_fuchsia.go
+++ b/src/runtime/vdso_keys_fuchsia.go
@@ -82,8 +82,9 @@
 	{"_zx_futex_wait", 0xb089e255, &vdso_zx_futex_wait},
 	{"_zx_futex_wake", 0xb089e288, &vdso_zx_futex_wake},
 	{"_zx_futex_requeue", 0xd509be7c, &vdso_zx_futex_requeue},
-	{"_zx_futex_wait_deprecated", 0x5fd30a05, &vdso_zx_futex_wait_deprecated},
-	{"_zx_futex_requeue_deprecated", 0xf0449fcc, &vdso_zx_futex_requeue_deprecated},
+	{"_zx_futex_wake_single_owner", 0x63970173, &vdso_zx_futex_wake_single_owner},
+	{"_zx_futex_requeue_single_owner", 0x8f9a9e7, &vdso_zx_futex_requeue_single_owner},
+	{"_zx_futex_get_owner", 0xf16dec6a, &vdso_zx_futex_get_owner},
 	{"_zx_port_create", 0x5294baed, &vdso_zx_port_create},
 	{"_zx_port_queue", 0x8f22883e, &vdso_zx_port_queue},
 	{"_zx_port_wait", 0xfc97666e, &vdso_zx_port_wait},
@@ -220,8 +221,9 @@
 //go:cgo_import_dynamic vdso_zx_futex_wait _zx_futex_wait
 //go:cgo_import_dynamic vdso_zx_futex_wake _zx_futex_wake
 //go:cgo_import_dynamic vdso_zx_futex_requeue _zx_futex_requeue
-//go:cgo_import_dynamic vdso_zx_futex_wait_deprecated _zx_futex_wait_deprecated
-//go:cgo_import_dynamic vdso_zx_futex_requeue_deprecated _zx_futex_requeue_deprecated
+//go:cgo_import_dynamic vdso_zx_futex_wake_single_owner _zx_futex_wake_single_owner
+//go:cgo_import_dynamic vdso_zx_futex_requeue_single_owner _zx_futex_requeue_single_owner
+//go:cgo_import_dynamic vdso_zx_futex_get_owner _zx_futex_get_owner
 //go:cgo_import_dynamic vdso_zx_port_create _zx_port_create
 //go:cgo_import_dynamic vdso_zx_port_queue _zx_port_queue
 //go:cgo_import_dynamic vdso_zx_port_wait _zx_port_wait
@@ -357,8 +359,9 @@
 //go:linkname vdso_zx_futex_wait vdso_zx_futex_wait
 //go:linkname vdso_zx_futex_wake vdso_zx_futex_wake
 //go:linkname vdso_zx_futex_requeue vdso_zx_futex_requeue
-//go:linkname vdso_zx_futex_wait_deprecated vdso_zx_futex_wait_deprecated
-//go:linkname vdso_zx_futex_requeue_deprecated vdso_zx_futex_requeue_deprecated
+//go:linkname vdso_zx_futex_wake_single_owner vdso_zx_futex_wake_single_owner
+//go:linkname vdso_zx_futex_requeue_single_owner vdso_zx_futex_requeue_single_owner
+//go:linkname vdso_zx_futex_get_owner vdso_zx_futex_get_owner
 //go:linkname vdso_zx_port_create vdso_zx_port_create
 //go:linkname vdso_zx_port_queue vdso_zx_port_queue
 //go:linkname vdso_zx_port_wait vdso_zx_port_wait
@@ -682,7 +685,7 @@
 
 //go:noescape
 //go:nosplit
-func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
+func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, new_futex_owner uint32, deadline int64) int32
 
 //go:noescape
 //go:nosplit
@@ -690,15 +693,19 @@
 
 //go:noescape
 //go:nosplit
-func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
+func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
 
 //go:noescape
 //go:nosplit
-func vdsoCall_zx_futex_wait_deprecated(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
+func vdsoCall_zx_futex_wake_single_owner(value_ptr unsafe.Pointer) int32
 
 //go:noescape
 //go:nosplit
-func vdsoCall_zx_futex_requeue_deprecated(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
+func vdsoCall_zx_futex_requeue_single_owner(wake_ptr unsafe.Pointer, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
+
+//go:noescape
+//go:nosplit
+func vdsoCall_zx_futex_get_owner(value_ptr unsafe.Pointer, koid unsafe.Pointer) int32
 
 //go:noescape
 //go:nosplit
@@ -1039,8 +1046,9 @@
 	vdso_zx_futex_wait                          uintptr
 	vdso_zx_futex_wake                          uintptr
 	vdso_zx_futex_requeue                       uintptr
-	vdso_zx_futex_wait_deprecated               uintptr
-	vdso_zx_futex_requeue_deprecated            uintptr
+	vdso_zx_futex_wake_single_owner             uintptr
+	vdso_zx_futex_requeue_single_owner          uintptr
+	vdso_zx_futex_get_owner                     uintptr
 	vdso_zx_port_create                         uintptr
 	vdso_zx_port_queue                          uintptr
 	vdso_zx_port_wait                           uintptr
diff --git a/src/runtime/vdsocalls_fuchsia_amd64.s b/src/runtime/vdsocalls_fuchsia_amd64.s
index f318b90..3e01eaa 100644
--- a/src/runtime/vdsocalls_fuchsia_amd64.s
+++ b/src/runtime/vdsocalls_fuchsia_amd64.s
@@ -787,13 +787,14 @@
 	MOVL AX, ret+24(FP)
 	RET
 
-// func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
+// func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, new_futex_owner uint32, deadline int64) int32
 TEXT runtime·vdsoCall_zx_futex_wait(SB),NOSPLIT,$0-28
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVQ value_ptr+0(FP), DI
 	MOVL current_value+8(FP), SI
-	MOVQ deadline+16(FP), DX
+	MOVL new_futex_owner+12(FP), DX
+	MOVQ deadline+16(FP), CX
 	MOVQ vdso_zx_futex_wait(SB), AX
 	CALL AX
 	MOVL AX, ret+24(FP)
@@ -810,7 +811,7 @@
 	MOVL AX, ret+16(FP)
 	RET
 
-// func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
+// func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
 TEXT runtime·vdsoCall_zx_futex_requeue(SB),NOSPLIT,$0-36
 	GO_ARGS
 	NO_LOCAL_POINTERS
@@ -819,37 +820,47 @@
 	MOVL current_value+12(FP), DX
 	MOVQ requeue_ptr+16(FP), CX
 	MOVL requeue_count+24(FP), R8
+	MOVL new_requeue_owner+28(FP), R9
 	MOVQ vdso_zx_futex_requeue(SB), AX
 	CALL AX
 	MOVL AX, ret+32(FP)
 	RET
 
-// func vdsoCall_zx_futex_wait_deprecated(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
-TEXT runtime·vdsoCall_zx_futex_wait_deprecated(SB),NOSPLIT,$0-28
+// func vdsoCall_zx_futex_wake_single_owner(value_ptr unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_futex_wake_single_owner(SB),NOSPLIT,$0-12
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVQ value_ptr+0(FP), DI
-	MOVL current_value+8(FP), SI
-	MOVQ deadline+16(FP), DX
-	MOVQ vdso_zx_futex_wait_deprecated(SB), AX
+	MOVQ vdso_zx_futex_wake_single_owner(SB), AX
 	CALL AX
-	MOVL AX, ret+24(FP)
+	MOVL AX, ret+8(FP)
 	RET
 
-// func vdsoCall_zx_futex_requeue_deprecated(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
-TEXT runtime·vdsoCall_zx_futex_requeue_deprecated(SB),NOSPLIT,$0-36
+// func vdsoCall_zx_futex_requeue_single_owner(wake_ptr unsafe.Pointer, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
+TEXT runtime·vdsoCall_zx_futex_requeue_single_owner(SB),NOSPLIT,$0-36
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVQ wake_ptr+0(FP), DI
-	MOVL wake_count+8(FP), SI
-	MOVL current_value+12(FP), DX
-	MOVQ requeue_ptr+16(FP), CX
-	MOVL requeue_count+24(FP), R8
-	MOVQ vdso_zx_futex_requeue_deprecated(SB), AX
+	MOVL current_value+8(FP), SI
+	MOVQ requeue_ptr+16(FP), DX
+	MOVL requeue_count+24(FP), CX
+	MOVL new_requeue_owner+28(FP), R8
+	MOVQ vdso_zx_futex_requeue_single_owner(SB), AX
 	CALL AX
 	MOVL AX, ret+32(FP)
 	RET
 
+// func vdsoCall_zx_futex_get_owner(value_ptr unsafe.Pointer, koid unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_futex_get_owner(SB),NOSPLIT,$0-20
+	GO_ARGS
+	NO_LOCAL_POINTERS
+	MOVQ value_ptr+0(FP), DI
+	MOVQ koid+8(FP), SI
+	MOVQ vdso_zx_futex_get_owner(SB), AX
+	CALL AX
+	MOVL AX, ret+16(FP)
+	RET
+
 // func vdsoCall_zx_port_create(options uint32, out unsafe.Pointer) int32
 TEXT runtime·vdsoCall_zx_port_create(SB),NOSPLIT,$0-20
 	GO_ARGS
diff --git a/src/runtime/vdsocalls_fuchsia_arm64.s b/src/runtime/vdsocalls_fuchsia_arm64.s
index e587cdb..046ec90 100644
--- a/src/runtime/vdsocalls_fuchsia_arm64.s
+++ b/src/runtime/vdsocalls_fuchsia_arm64.s
@@ -710,13 +710,14 @@
 	MOVW R0, ret+24(FP)
 	RET
 
-// func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
+// func vdsoCall_zx_futex_wait(value_ptr unsafe.Pointer, current_value int32, new_futex_owner uint32, deadline int64) int32
 TEXT runtime·vdsoCall_zx_futex_wait(SB),NOSPLIT,$0-28
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVD value_ptr+0(FP), R0
 	MOVW current_value+8(FP), R1
-	MOVD deadline+16(FP), R2
+	MOVW new_futex_owner+12(FP), R2
+	MOVD deadline+16(FP), R3
 	BL vdso_zx_futex_wait(SB)
 	MOVW R0, ret+24(FP)
 	RET
@@ -731,7 +732,7 @@
 	MOVW R0, ret+16(FP)
 	RET
 
-// func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
+// func vdsoCall_zx_futex_requeue(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
 TEXT runtime·vdsoCall_zx_futex_requeue(SB),NOSPLIT,$0-36
 	GO_ARGS
 	NO_LOCAL_POINTERS
@@ -740,34 +741,43 @@
 	MOVW current_value+12(FP), R2
 	MOVD requeue_ptr+16(FP), R3
 	MOVW requeue_count+24(FP), R4
+	MOVW new_requeue_owner+28(FP), R5
 	BL vdso_zx_futex_requeue(SB)
 	MOVW R0, ret+32(FP)
 	RET
 
-// func vdsoCall_zx_futex_wait_deprecated(value_ptr unsafe.Pointer, current_value int32, deadline int64) int32
-TEXT runtime·vdsoCall_zx_futex_wait_deprecated(SB),NOSPLIT,$0-28
+// func vdsoCall_zx_futex_wake_single_owner(value_ptr unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_futex_wake_single_owner(SB),NOSPLIT,$0-12
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVD value_ptr+0(FP), R0
-	MOVW current_value+8(FP), R1
-	MOVD deadline+16(FP), R2
-	BL vdso_zx_futex_wait_deprecated(SB)
-	MOVW R0, ret+24(FP)
+	BL vdso_zx_futex_wake_single_owner(SB)
+	MOVW R0, ret+8(FP)
 	RET
 
-// func vdsoCall_zx_futex_requeue_deprecated(wake_ptr unsafe.Pointer, wake_count uint32, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32) int32
-TEXT runtime·vdsoCall_zx_futex_requeue_deprecated(SB),NOSPLIT,$0-36
+// func vdsoCall_zx_futex_requeue_single_owner(wake_ptr unsafe.Pointer, current_value int32, requeue_ptr unsafe.Pointer, requeue_count uint32, new_requeue_owner uint32) int32
+TEXT runtime·vdsoCall_zx_futex_requeue_single_owner(SB),NOSPLIT,$0-36
 	GO_ARGS
 	NO_LOCAL_POINTERS
 	MOVD wake_ptr+0(FP), R0
-	MOVW wake_count+8(FP), R1
-	MOVW current_value+12(FP), R2
-	MOVD requeue_ptr+16(FP), R3
-	MOVW requeue_count+24(FP), R4
-	BL vdso_zx_futex_requeue_deprecated(SB)
+	MOVW current_value+8(FP), R1
+	MOVD requeue_ptr+16(FP), R2
+	MOVW requeue_count+24(FP), R3
+	MOVW new_requeue_owner+28(FP), R4
+	BL vdso_zx_futex_requeue_single_owner(SB)
 	MOVW R0, ret+32(FP)
 	RET
 
+// func vdsoCall_zx_futex_get_owner(value_ptr unsafe.Pointer, koid unsafe.Pointer) int32
+TEXT runtime·vdsoCall_zx_futex_get_owner(SB),NOSPLIT,$0-20
+	GO_ARGS
+	NO_LOCAL_POINTERS
+	MOVD value_ptr+0(FP), R0
+	MOVD koid+8(FP), R1
+	BL vdso_zx_futex_get_owner(SB)
+	MOVW R0, ret+16(FP)
+	RET
+
 // func vdsoCall_zx_port_create(options uint32, out unsafe.Pointer) int32
 TEXT runtime·vdsoCall_zx_port_create(SB),NOSPLIT,$0-20
 	GO_ARGS
diff --git a/src/syscall/zx/syscalls_fuchsia.go b/src/syscall/zx/syscalls_fuchsia.go
index 7901b2f..fd90a2f 100644
--- a/src/syscall/zx/syscalls_fuchsia.go
+++ b/src/syscall/zx/syscalls_fuchsia.go
@@ -263,7 +263,7 @@
 
 //go:noescape
 //go:nosplit
-func Sys_futex_wait(value_ptr *int32, current_value int32, deadline Time) Status
+func Sys_futex_wait(value_ptr *int32, current_value int32, new_futex_owner Handle, deadline Time) Status
 
 //go:noescape
 //go:nosplit
@@ -271,15 +271,19 @@
 
 //go:noescape
 //go:nosplit
-func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
+func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
 
 //go:noescape
 //go:nosplit
-func Sys_futex_wait_deprecated(value_ptr *int32, current_value int32, deadline Time) Status
+func Sys_futex_wake_single_owner(value_ptr *int32) Status
 
 //go:noescape
 //go:nosplit
-func Sys_futex_requeue_deprecated(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
+func Sys_futex_requeue_single_owner(wake_ptr *int32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
+
+//go:noescape
+//go:nosplit
+func Sys_futex_get_owner(value_ptr *int32, koid *uint64) Status
 
 //go:noescape
 //go:nosplit
diff --git a/src/syscall/zx/syscalls_fuchsia_amd64.s b/src/syscall/zx/syscalls_fuchsia_amd64.s
index be8f4e4..0628457 100644
--- a/src/syscall/zx/syscalls_fuchsia_amd64.s
+++ b/src/syscall/zx/syscalls_fuchsia_amd64.s
@@ -258,7 +258,7 @@
 TEXT ·Sys_eventpair_create(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_eventpair_create(SB)
 
-// func Sys_futex_wait(value_ptr *int32, current_value int32, deadline Time) Status
+// func Sys_futex_wait(value_ptr *int32, current_value int32, new_futex_owner Handle, deadline Time) Status
 TEXT ·Sys_futex_wait(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_wait(SB)
 
@@ -266,17 +266,21 @@
 TEXT ·Sys_futex_wake(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_wake(SB)
 
-// func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
+// func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
 TEXT ·Sys_futex_requeue(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_requeue(SB)
 
-// func Sys_futex_wait_deprecated(value_ptr *int32, current_value int32, deadline Time) Status
-TEXT ·Sys_futex_wait_deprecated(SB),NOSPLIT,$0
-	JMP runtime·vdsoCall_zx_futex_wait_deprecated(SB)
+// func Sys_futex_wake_single_owner(value_ptr *int32) Status
+TEXT ·Sys_futex_wake_single_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_wake_single_owner(SB)
 
-// func Sys_futex_requeue_deprecated(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
-TEXT ·Sys_futex_requeue_deprecated(SB),NOSPLIT,$0
-	JMP runtime·vdsoCall_zx_futex_requeue_deprecated(SB)
+// func Sys_futex_requeue_single_owner(wake_ptr *int32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
+TEXT ·Sys_futex_requeue_single_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_requeue_single_owner(SB)
+
+// func Sys_futex_get_owner(value_ptr *int32, koid *uint64) Status
+TEXT ·Sys_futex_get_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_get_owner(SB)
 
 // func Sys_port_create(options uint32, out *Handle) Status
 TEXT ·Sys_port_create(SB),NOSPLIT,$0
diff --git a/src/syscall/zx/syscalls_fuchsia_arm64.s b/src/syscall/zx/syscalls_fuchsia_arm64.s
index be8f4e4..0628457 100644
--- a/src/syscall/zx/syscalls_fuchsia_arm64.s
+++ b/src/syscall/zx/syscalls_fuchsia_arm64.s
@@ -258,7 +258,7 @@
 TEXT ·Sys_eventpair_create(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_eventpair_create(SB)
 
-// func Sys_futex_wait(value_ptr *int32, current_value int32, deadline Time) Status
+// func Sys_futex_wait(value_ptr *int32, current_value int32, new_futex_owner Handle, deadline Time) Status
 TEXT ·Sys_futex_wait(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_wait(SB)
 
@@ -266,17 +266,21 @@
 TEXT ·Sys_futex_wake(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_wake(SB)
 
-// func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
+// func Sys_futex_requeue(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
 TEXT ·Sys_futex_requeue(SB),NOSPLIT,$0
 	JMP runtime·vdsoCall_zx_futex_requeue(SB)
 
-// func Sys_futex_wait_deprecated(value_ptr *int32, current_value int32, deadline Time) Status
-TEXT ·Sys_futex_wait_deprecated(SB),NOSPLIT,$0
-	JMP runtime·vdsoCall_zx_futex_wait_deprecated(SB)
+// func Sys_futex_wake_single_owner(value_ptr *int32) Status
+TEXT ·Sys_futex_wake_single_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_wake_single_owner(SB)
 
-// func Sys_futex_requeue_deprecated(wake_ptr *int32, wake_count uint32, current_value int32, requeue_ptr *int32, requeue_count uint32) Status
-TEXT ·Sys_futex_requeue_deprecated(SB),NOSPLIT,$0
-	JMP runtime·vdsoCall_zx_futex_requeue_deprecated(SB)
+// func Sys_futex_requeue_single_owner(wake_ptr *int32, current_value int32, requeue_ptr *int32, requeue_count uint32, new_requeue_owner Handle) Status
+TEXT ·Sys_futex_requeue_single_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_requeue_single_owner(SB)
+
+// func Sys_futex_get_owner(value_ptr *int32, koid *uint64) Status
+TEXT ·Sys_futex_get_owner(SB),NOSPLIT,$0
+	JMP runtime·vdsoCall_zx_futex_get_owner(SB)
 
 // func Sys_port_create(options uint32, out *Handle) Status
 TEXT ·Sys_port_create(SB),NOSPLIT,$0
