]> Cypherpunks repositories - gostls13.git/commitdiff
[release-branch.go1.13] runtime: fix wrong offset when calling ppc64x nanotime syscall
authorCarlos Eduardo Seo <cseo@linux.vnet.ibm.com>
Fri, 17 Jan 2020 20:59:59 +0000 (17:59 -0300)
committerIan Lance Taylor <iant@golang.org>
Fri, 3 Apr 2020 22:09:47 +0000 (22:09 +0000)
There is a wrong offset when getting the results of a clock_gettime
syscall. Although the syscall will never be called in native ppc64x,
QEMU doesn't implement VDSO, so it will return wrong values.

For #36592
Fixes #38236

Change-Id: Icf838075228dcdd62cf2c1279aa983e5993d66ee
Reviewed-on: https://go-review.googlesource.com/c/go/+/215397
Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
(cherry picked from commit 71239b4f491698397149868c88d2c851de2cd49b)
Reviewed-on: https://go-review.googlesource.com/c/go/+/227179
Reviewed-by: Carlos Eduardo Seo <cseo@linux.vnet.ibm.com>
Run-TryBot: Ian Lance Taylor <iant@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>

src/runtime/sys_linux_ppc64x.s

index 13d23156bdbbe861631745f8befa934b3acc04f2..435cc2809a47ccb83ed55227bc1a5c96fd25b06f 100644 (file)
@@ -251,7 +251,7 @@ fallback:
        ADD     $32, R1, R4
        SYSCALL $SYS_clock_gettime
        MOVD    32(R1), R3
-       MOVD    48(R1), R5
+       MOVD    40(R1), R5
        JMP     finish
 
 TEXT runtime·rtsigprocmask(SB),NOSPLIT|NOFRAME,$0-28