Skip to content

x/crypto/sha3: TestCSHAKELargeS times out on s390x #70810

@jcajka

Description

@jcajka

Go version

go version go1.23.2 linux/s390x

Output of go env in your module/workspace:

GO111MODULE=''
GOARCH='s390x'
GOBIN=''
GOEXE=''
GOEXPERIMENT=''
GOFLAGS=''
GOHOSTARCH='s390x'
GOHOSTOS='linux'
GOINSECURE=''
GONOPROXY=''
GONOSUMDB=''
GOOS='linux'
GOPRIVATE=''
GOPROXY='direct'
GOROOT='/usr/lib/golang'
GOSUMDB='off'
GOTMPDIR=''
GOTOOLCHAIN='local'
GOTOOLDIR='/usr/lib/golang/pkg/tool/linux_s390x'
GOVCS=''
GOVERSION='go1.23.2'
GODEBUG=''
GCCGO='gccgo'
AR='ar'
CC='gcc'
CXX='g++'
CGO_ENABLED='1'
GOWORK=''
CGO_CFLAGS='-O2 -g'
CGO_CPPFLAGS=''
CGO_CXXFLAGS='-O2 -g'
CGO_FFLAGS='-O2 -g'
CGO_LDFLAGS='-O2 -g'
PKG_CONFIG='pkg-config'
GOGCCFLAGS='-fPIC -m64 -march=z196 -pthread -Wl,--no-gc-sections -fmessage-length=0 -ffile-prefix-map=/tmp/go-build429958401=/tmp/go-build -gno-record-gcc-switches

What did you do?

go test ./...

What did you see happen?

[snip]
panic: test timed out after 10m0s
	running tests:
		TestCSHAKELargeS (9m59s)

goroutine 27 [running]:
testing.(*M).startAlarm.func1()
	/usr/lib/golang/src/testing/testing.go:2373 +0x464
created by time.goFunc
	/usr/lib/golang/src/time/sleep.go:215 +0x42

goroutine 1 [chan receive, 9 minutes]:
testing.(*T).Run(0xc00009a680, {0x1f3110, 0x10}, 0x1fec40)
	/usr/lib/golang/src/testing/testing.go:1751 +0x48e
testing.runTests.func1(0xc00009a680)
	/usr/lib/golang/src/testing/testing.go:2168 +0x62
testing.tRunner(0xc00009a680, 0xc00008eca0)
	/usr/lib/golang/src/testing/testing.go:1690 +0x132
testing.runTests(0xc000092180, {0x319cc0, 0xc, 0xc}, {0xc1cee04b5ea3e990, 0x8bb2cd7205, 0x31e7e0})
	/usr/lib/golang/src/testing/testing.go:2166 +0x4b4
testing.(*M).Run(0xc0000a00a0)
	/usr/lib/golang/src/testing/testing.go:2034 +0x704
main.main()
	_testmain.go:95 +0xd8

goroutine 14 [runnable]:
golang.org/x/crypto/sha3.(*asmState).Read(0xc00072c008, {0xc000732000, 0x200003e8, 0x200003e8})
	/home/jcajka/upstream/crypto/sha3/sha3_s390x.go:194 +0x3d6
golang.org/x/crypto/sha3.TestCSHAKELargeS(0xc00009a4e0)
	/home/jcajka/upstream/crypto/sha3/sha3_test.go:470 +0xf8
testing.tRunner(0xc00009a4e0, 0x1fec40)
	/usr/lib/golang/src/testing/testing.go:1690 +0x132
created by testing.(*T).Run in goroutine 1
	/usr/lib/golang/src/testing/testing.go:1743 +0x46e
FAIL	golang.org/x/crypto/sha3	600.056s
[snip]

What did you expect to see?

All tests passing.
It seems that the failure have been introduced in commit golang/crypto@80ea76e I have suspicion that it might also be related to the removal of the s390x ASM in golang/crypto@59b5a86 In that context of losing the optimized path, have you reached out to the original contributor before removing/disabling it?

Metadata

Metadata

Assignees

No one assigned

    Labels

    NeedsInvestigationSomeone must examine and confirm this is a valid issue and not a duplicate of an existing one.arch-s390xIssues solely affecting the s390x architecture.

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions