From e26b51b0d587b6fe17020fa66d400492c95f43de Mon Sep 17 00:00:00 2001 From: Austin Clements Date: Tue, 23 May 2017 17:54:24 -0400 Subject: [PATCH] runtime: use pselect6 for usleep on linux/386 Commit 4dcba023c6 replaced select with pselect6 on linux/amd64 and linux/arm, but it turns out the Android emulator uses linux/386. This makes the equivalent change there, too. Fixes #20409 more. Change-Id: If542d6ade06309aab8758d5f5f6edec201ca7670 Reviewed-on: https://go-review.googlesource.com/44011 Run-TryBot: Austin Clements TryBot-Result: Gobot Gobot Reviewed-by: Brad Fitzpatrick Reviewed-by: Ian Lance Taylor --- src/runtime/sys_linux_386.s | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/src/runtime/sys_linux_386.s b/src/runtime/sys_linux_386.s index 2eb4b1e665..60618337dc 100644 --- a/src/runtime/sys_linux_386.s +++ b/src/runtime/sys_linux_386.s @@ -98,15 +98,18 @@ TEXT runtime·usleep(SB),NOSPLIT,$8 MOVL $1000000, CX DIVL CX MOVL AX, 0(SP) + MOVL $1000, AX // usec to nsec + MULL DX MOVL DX, 4(SP) - // select(0, 0, 0, 0, &tv) - MOVL $142, AX + // pselect6(0, 0, 0, 0, &ts, 0) + MOVL $308, AX MOVL $0, BX MOVL $0, CX MOVL $0, DX MOVL $0, SI LEAL 0(SP), DI + MOVL $0, BP INVOKE_SYSCALL RET -- 2.50.0