[pull] master from golang:master#39
Merged
Merged
Conversation
Fixes #76133 Change-Id: I7889aeff2ed197ee15f2ce7689b99b936a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/778660 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Austin Clements <austin@google.com> Reviewed-by: Roland Shoemaker <roland@golang.org>
…tress tests This CL attempts to reduce flakes for two goroutine leak profiler subtests: - overlapping_profile_requests - overlapping_goroutine_and_goroutine_leak_profile_requests Watchflake issues #76540 and #76749 currently have ~300 comments between them. A prior round of deflaking I think reduced the frequency, but watchflakes is reporting maybe a dozen or so a week recently between them (though I did not analyze prior or current rate too closely). These are essentially stress tests that look for data corruption or data races while exercising the leak profiler concurrently with itself and concurrently with the traditional goroutine profiler. The tests expect to find 6 leaked goroutines, but in some cases seem to report 5. (This might be due to some rare event keeping something alive such that 5 is the "correct" result from the current implementation, though it might not be expected from a user point of view.) This CL loosens the check to allow 4, 5, or 6 goroutines. A bad data corruption or data race might be kind enough to do more than just alter the count by 1-2, and the test also verifies a key function is in the detected goroutines, so perhaps this is OK while people are trying to land CLs as the freeze approaches. I also filed #79452 for tracking down a better root cause and improving the test or profiler. I'm optimistically marking the two main watchflakes issues as fixed (perhaps too optimistically), but watchflakes will re-open if needed. Fixes #76749 Fixes #76540 Updates #79409 Updates #79452 Change-Id: I14b4178337c0cf2a2bbd4b8c5256090ae202b8d8 Reviewed-on: https://go-review.googlesource.com/c/go/+/778620 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Keith Randall <khr@google.com> Reviewed-by: Keith Randall <khr@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Georgian-Vlad Saioc <vsaioc@uber.com>
Change-Id: Ia2166ac4770a101723616fadff20948a6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776700 Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org>
Change-Id: I6afbde4b57028fccc49a6cefab90d6bc6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776701 Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Roland Shoemaker <roland@golang.org> Auto-Submit: Filippo Valsorda <filippo@golang.org> TryBot-Bypass: Filippo Valsorda <filippo@golang.org>
Change-Id: I33c759d92123b39bd2596379bf8b95be6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776702 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Roland Shoemaker <roland@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Filippo Valsorda <filippo@golang.org>
Also, make single-test fixtures local to the test that uses them. Updates #79367 Change-Id: I4928d499206b529b92d532e41c8c7c4e6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776703 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Roland Shoemaker <roland@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Change-Id: I13794baf4ae086d553b78031ff93b1d46a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776704 Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org>
Also, update related comments. Updates #70505 Change-Id: I3fdcf81f86f8eaf7834223eb854824356a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/776705 Reviewed-by: Roland Shoemaker <roland@golang.org> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> TryBot-Bypass: Filippo Valsorda <filippo@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com>
Calling New otherwise panics, which is unnecessary, especially in crypto.SignMessage and especially if we add a new not-implemented hash value for ML-DSA external Mu. Change-Id: I9f8d29d01e126838d7d2585133e562536a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/745660 Reviewed-by: Roland Shoemaker <roland@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Filippo Valsorda <filippo@golang.org>
Change-Id: I6834dda4b1fe5db5710d1020b26104ba6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/745661 Reviewed-by: Dmitri Shuralyov <dmitshur@google.com> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Roland Shoemaker <roland@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
Align with the new c2sp.org/det-keygen specification in C2SP/C2SP#197 and import the new benchmarks from C2SP/CCTV#25 since the old ones did not have candidates ≡ 7 mod 8. Change-Id: Ie7a36ae4458e0c113593c972d7783bd16a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/733440 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Sophie Schmieg <sschmieg@google.com>
Change-Id: I3552a3c9c3de5f2d2d1902682214b1536a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/763020 Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Michael Pratt <mpratt@google.com> Reviewed-by: Roland Shoemaker <roland@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net>
Change-Id: I6ddf1e2af4f2d139e54821f10b99d9de6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/738160 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Roland Shoemaker <roland@golang.org> Auto-Submit: Filippo Valsorda <filippo@golang.org> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Michael Pratt <mpratt@google.com>
Added the condition to check if the token is inside of statement (token.IDENT), where we should not treat comments as unindented top-level doc comments. I would also add, in another patch, functions to detect the statement, expression context to simplify conditions in printer.intersperseComments() as pointed out in TODO(gri). Fixes #52605 Change-Id: Ia111cd09821c78c5c84e53524ad0649e01f489b4 Reviewed-on: https://go-review.googlesource.com/c/go/+/579978 Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com> Reviewed-by: Russ Cox <rsc@golang.org> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Auto-Submit: Hyang-Ah Hana Kim <hyangah@gmail.com>
Replace our variable time GHASH implementation with a constant-time one. This implementation is slower on platforms which lack native AES instructions (the only places we use the generic implementation), but that is a reasonable trade-off to remove one of the remaining variable-time pieces of the generic AES implementation. The technique used in this implementation is based on the technique described in the BearSSL constant-time notes[0] with Karatsuba multiplication to decompose the 128-bit multiplication into smaller pieces. [0] https://www.bearssl.org/constanttime.html#ghash-for-gcm goos: darwin goarch: arm64 pkg: crypto/internal/fips140/aes/gcm cpu: Apple M1 Pro │ ghash-vt.bench │ ghash-ct.bench │ │ sec/op │ sec/op vs base │ GHASH/16-10 72.41n ± 2% 129.85n ± 1% +79.31% (p=0.000 n=10) GHASH/32-10 130.5n ± 3% 243.3n ± 0% +86.44% (p=0.000 n=10) GHASH/64-10 248.7n ± 1% 474.2n ± 1% +90.69% (p=0.000 n=10) GHASH/128-10 487.0n ± 1% 953.3n ± 2% +95.75% (p=0.000 n=10) GHASH/256-10 952.7n ± 2% 1893.0n ± 3% +98.71% (p=0.000 n=10) GHASH/512-10 1.893µ ± 1% 3.775µ ± 2% +99.47% (p=0.000 n=10) GHASH/1024-10 3.777µ ± 2% 7.472µ ± 2% +97.84% (p=0.000 n=10) geomean 499.8n 962.0n +92.47% │ aes-vt-ghash.bench │ aes-ct-ghash.bench │ │ sec/op │ sec/op vs base │ AESGCM/Open-128-64-10 688.6n ± 2% 1007.5n ± 4% +46.31% (p=0.000 n=10) AESGCM/Seal-128-64-10 672.8n ± 2% 998.0n ± 1% +48.34% (p=0.000 n=10) AESGCM/Open-256-64-10 788.2n ± 0% 1110.0n ± 0% +40.83% (p=0.000 n=10) AESGCM/Seal-256-64-10 789.2n ± 4% 1104.0n ± 0% +39.89% (p=0.000 n=10) AESGCM/Open-128-1350-10 9.535µ ± 2% 14.091µ ± 0% +47.78% (p=0.000 n=10) AESGCM/Seal-128-1350-10 9.512µ ± 1% 14.065µ ± 0% +47.87% (p=0.000 n=10) AESGCM/Open-256-1350-10 11.08µ ± 0% 15.67µ ± 3% +41.45% (p=0.000 n=10) AESGCM/Seal-256-1350-10 11.20µ ± 2% 15.96µ ± 1% +42.46% (p=0.000 n=10) AESGCM/Open-128-8192-10 55.66µ ± 23% 84.01µ ± 1% +50.94% (p=0.002 n=10) AESGCM/Seal-128-8192-10 55.44µ ± 1% 83.85µ ± 5% +51.23% (p=0.000 n=10) AESGCM/Open-256-8192-10 64.88µ ± 2% 93.23µ ± 0% +43.70% (p=0.000 n=10) AESGCM/Seal-256-8192-10 64.47µ ± 1% 93.15µ ± 0% +44.48% (p=0.000 n=10) geomean 7.676µ 11.16µ +45.39% Updates #69025 Cq-Include-Trybots: luci.golang.try:gotip-linux-amd64-longtest,x_crypto-gotip-linux-amd64-longtest Change-Id: I29f916ce30bfdb5c83885369e1cb6aff5ea5d4fe Reviewed-on: https://go-review.googlesource.com/c/go/+/746120 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Daniel McCarney <daniel@binaryparadox.net> Reviewed-by: Neal Patel <nealpatel@google.com> Reviewed-by: Filippo Valsorda <filippo@golang.org> Auto-Submit: Roland Shoemaker <roland@golang.org>
In TestServerNoWriteTimeout, shutting down the server seems insufficient to guarantee that the server handler is done by the time the test exits for HTTP/2. As the test shuts down, t.done is written within testing.tRunner, while the server handler goroutine simultaneously reads t.done while executing t.Logf. For #79409 Change-Id: I036ed8a4f47de7ed1bbfeeb482bb562c6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/779120 Reviewed-by: Damien Neil <dneil@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Nicholas Husin <husin@google.com>
This is an implementation of proposal #77362. Add it as an internal package so we can use it for fake networking support in net/http/httptest. This can also eventually replace the fake network implementations in net/http and net/http/internal/http2. For #77362 For #76608 Change-Id: Ida069e139ede90bf01e413f2a69cf0116a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/769520 LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Nicholas Husin <husin@google.com> Reviewed-by: Nicholas Husin <nsh@golang.org> Auto-Submit: Damien Neil <dneil@google.com>
NewTestServer takes a *testing.T. It uses it to register a Cleanup function to shut down the server at the end of a test, and to fail the test when a server handler panics. NewTestServer uses an in-memory fake network by default, suitable for use with the testing/synctest package. The user can choose to use the loopback network instead by calling Start or StartTLS. For #76608 Change-Id: Ic99e304f1a809a4727aaa9f7316f60ec6a6a6964 Reviewed-on: https://go-review.googlesource.com/c/go/+/769521 Reviewed-by: Nicholas Husin <husin@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com> Reviewed-by: Nicholas Husin <nsh@golang.org> Auto-Submit: Damien Neil <dneil@google.com>
This change flips the use of GOEXPERIMENT=genericmethods around. We now default to V4 and revert to V3 if the flag is enabled. This helps rule out generic methods entirely if we encounter issues during the freeze which might be related. Again, this flag will not be included in the Go 1.27 release. For #77273 Change-Id: Ic68faff197867ba672107f07fa2b92ce64b9d3ef Reviewed-on: https://go-review.googlesource.com/c/go/+/779221 Reviewed-by: Robert Griesemer <gri@google.com> LUCI-TryBot-Result: golang-scoped@luci-project-accounts.iam.gserviceaccount.com <golang-scoped@luci-project-accounts.iam.gserviceaccount.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )