<feed xmlns='http://www.w3.org/2005/Atom'>
<title>go, branch go1.21.6</title>
<subtitle>Fork of Go programming language with my patches.</subtitle>
<id>http://git.kilabit.info/go/atom?h=go1.21.6</id>
<link rel='self' href='http://git.kilabit.info/go/atom?h=go1.21.6'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/'/>
<updated>2024-01-09T18:17:19Z</updated>
<entry>
<title>[release-branch.go1.21] go1.21.6</title>
<updated>2024-01-09T18:17:19Z</updated>
<author>
<name>Gopher Robot</name>
<email>gobot@golang.org</email>
</author>
<published>2024-01-09T18:14:02Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=cc85462b3d23193e4861813ea85e254cfe372403'/>
<id>urn:sha1:cc85462b3d23193e4861813ea85e254cfe372403</id>
<content type='text'>
Change-Id: I85e48d54e6938b3882a0bb8f2de75fee6ecb2668
Reviewed-on: https://go-review.googlesource.com/c/go/+/554839
Commit-Queue: Gopher Robot &lt;gobot@golang.org&gt;
Reviewed-by: Matthew Dempsky &lt;mdempsky@google.com&gt;
Auto-Submit: Gopher Robot &lt;gobot@golang.org&gt;
TryBot-Bypass: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
Reviewed-by: Dmitri Shuralyov &lt;dmitshur@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] crypto/tls: align FIPS-only mode with BoringSSL policy</title>
<updated>2024-01-04T23:16:07Z</updated>
<author>
<name>Filippo Valsorda</name>
<email>filippo@golang.org</email>
</author>
<published>2023-12-14T21:13:29Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=d2cb1401946f683a73779e6ac4e30108a9b67c5c'/>
<id>urn:sha1:d2cb1401946f683a73779e6ac4e30108a9b67c5c</id>
<content type='text'>
This enables TLS 1.3, disables P-521, and disables non-ECDHE suites.

Updates #64717
Updates #62372
Fixes #64719

Change-Id: I3a65b239ef0198bbdbe5e55e0810e7128f90a091
Reviewed-on: https://go-review.googlesource.com/c/go/+/549975
Reviewed-by: Roland Shoemaker &lt;roland@golang.org&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Than McIntosh &lt;thanm@google.com&gt;
Reviewed-on: https://go-review.googlesource.com/c/go/+/553856
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
Reviewed-by: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] crypto/internal/boring: upgrade module to fips-20220613</title>
<updated>2024-01-04T23:16:05Z</updated>
<author>
<name>Filippo Valsorda</name>
<email>filippo@golang.org</email>
</author>
<published>2023-12-14T16:07:19Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=368e2a9461a7452d272b039e8882791e45fb70b8'/>
<id>urn:sha1:368e2a9461a7452d272b039e8882791e45fb70b8</id>
<content type='text'>
Also, add EVP_aead_aes_*_gcm_tls13 to the build, which we will need in a
following CL, to avoid rebuilding the syso twice.

Updates #64717
Updates #62372
Updates #64719

Change-Id: Ie4d853ad9b914c1095cad60694a1ae6f77dc22ce
Cq-Include-Trybots: luci.golang.try:go1.21-linux-amd64-boringcrypto
Reviewed-on: https://go-review.googlesource.com/c/go/+/549695
Reviewed-by: Than McIntosh &lt;thanm@google.com&gt;
Reviewed-by: Roland Shoemaker &lt;roland@golang.org&gt;
Reviewed-on: https://go-review.googlesource.com/c/go/+/553855
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
TryBot-Result: Gopher Robot &lt;gobot@golang.org&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Run-TryBot: Matthew Dempsky &lt;mdempsky@google.com&gt;
Reviewed-by: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] runtime: add race annotations in IncNonDefault</title>
<updated>2024-01-04T21:37:29Z</updated>
<author>
<name>David Chase</name>
<email>drchase@google.com</email>
</author>
<published>2023-12-14T19:20:12Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=8c6078adfbfc2ba5a2108dfddfafc3b69cce410e'/>
<id>urn:sha1:8c6078adfbfc2ba5a2108dfddfafc3b69cce410e</id>
<content type='text'>
Also use CompareAndSwap to make the code actually less racy.

Added a test which will be meaningful when run under the race
detector (tested it -race with broken fix in runtime, it failed).

This backport incorporates the correction in CL 551856,
using racereleasemerge instead of racerelease. 

Fixes #64757

Change-Id: I5972e08901d1adc8ba74858edad7eba91be1b0ce
Reviewed-on: https://go-review.googlesource.com/c/go/+/549796
Run-TryBot: David Chase &lt;drchase@google.com&gt;
Reviewed-by: Mauri de Souza Meneguzzo &lt;mauri870@gmail.com&gt;
Reviewed-by: Cherry Mui &lt;cherryyz@google.com&gt;
TryBot-Result: Gopher Robot &lt;gobot@golang.org&gt;
(cherry picked from commit 3313bbb4055f38f53cd43c6c5782a229f445f230)
Reviewed-on: https://go-review.googlesource.com/c/go/+/550236
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
TryBot-Bypass: Matthew Dempsky &lt;mdempsky@google.com&gt;
Reviewed-by: Michael Knyszek &lt;mknyszek@google.com&gt;
Reviewed-by: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] maps: fix aliasing problems with Clone</title>
<updated>2024-01-04T21:37:00Z</updated>
<author>
<name>Keith Randall</name>
<email>khr@golang.org</email>
</author>
<published>2023-12-01T06:59:04Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=f6b203c8281cc84b9846a550aeee40ac395274ae'/>
<id>urn:sha1:f6b203c8281cc84b9846a550aeee40ac395274ae</id>
<content type='text'>
Make sure to alloc+copy large keys and values instead of aliasing them,
when they might be updated by a future assignment.

Fixes #64475

Change-Id: Ie2226a81cf3897e4e2ee24472f2966d397ace53f
Reviewed-on: https://go-review.googlesource.com/c/go/+/546515
Reviewed-by: Cherry Mui &lt;cherryyz@google.com&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Keith Randall &lt;khr@google.com&gt;
Reviewed-by: Mauri de Souza Meneguzzo &lt;mauri870@gmail.com&gt;
(cherry picked from commit 16d3040a84be821d801b75bd1a3d8ab4cc89ee36)
Reviewed-on: https://go-review.googlesource.com/c/go/+/547375
TryBot-Bypass: Matthew Dempsky &lt;mdempsky@google.com&gt;
Reviewed-by: Matthew Dempsky &lt;mdempsky@google.com&gt;
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] runtime: put ReadMemStats debug assertions behind a double-check mode</title>
<updated>2024-01-04T21:34:32Z</updated>
<author>
<name>Michael Anthony Knyszek</name>
<email>mknyszek@google.com</email>
</author>
<published>2023-11-27T22:27:32Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=43818206dc7974cb8ce080e0c5e0bce3563029f7'/>
<id>urn:sha1:43818206dc7974cb8ce080e0c5e0bce3563029f7</id>
<content type='text'>
ReadMemStats has a few assertions it makes about the consistency of the
stats it's about to produce. Specifically, how those stats line up with
runtime-internal stats. These checks are generally useful, but crashing
just because some stats are wrong is a heavy price to pay.

For a long time this wasn't a problem, but very recently it became a
real problem. It turns out that there's real benign skew that can happen
wherein sysmon (which doesn't synchronize with a STW) generates a trace
event when tracing is enabled, and may mutate some stats while
ReadMemStats is running its checks.

Fix this by synchronizing with both sysmon and the tracer. This is a bit
heavy-handed, but better that than false positives.

Also, put the checks behind a debug mode. We want to reduce the risk of
backporting this change, and again, it's not great to crash just because
user-facing stats are off. Still, enable this debug mode during the
runtime tests so we don't lose quite as much coverage from disabling
these checks by default.

For #64401.
Fixes #64410.

Change-Id: I9adb3e5c7161d207648d07373a11da8a5f0fda9a
Reviewed-on: https://go-review.googlesource.com/c/go/+/545277
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Michael Pratt &lt;mpratt@google.com&gt;
Reviewed-by: Felix Geisendörfer &lt;felix.geisendoerfer@datadoghq.com&gt;
(cherry picked from commit b2efd1de97402ec4b8fb4e9e0ec29c8e49e8e200)
Reviewed-on: https://go-review.googlesource.com/c/go/+/545557
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
TryBot-Bypass: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] runtime: add the disablethp GODEBUG setting</title>
<updated>2024-01-04T17:32:44Z</updated>
<author>
<name>Michael Anthony Knyszek</name>
<email>mknyszek@google.com</email>
</author>
<published>2023-12-05T17:31:34Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=cf65d74bc5198da0561252ab06a3f75961988338'/>
<id>urn:sha1:cf65d74bc5198da0561252ab06a3f75961988338</id>
<content type='text'>
Go 1.21.1 and Go 1.22 have ceased working around an issue with Linux
kernel defaults for transparent huge pages that can result in excessive
memory overheads. (https://bugzilla.kernel.org/show_bug.cgi?id=93111)

Many Linux distributions disable huge pages altogether these days, so
this problem isn't quite as far-reaching as it used to be. Also, the
problem only affects Go programs with very particular memory usage
patterns.

That being said, because the runtime used to actively deal with this
problem (but with some unpredictable behavior), it's preventing users
that don't have a lot of control over their execution environment from
upgrading to Go beyond Go 1.20.

This change adds a GODEBUG to smooth over the transition. The GODEBUG
setting disables transparent huge pages for all heap memory on Linux,
which is much more predictable than restoring the old behavior.

For #64332.
Fixes #64561.

Change-Id: I73b1894337f0f0b1a5a17b90da1221e118e0b145
Reviewed-on: https://go-review.googlesource.com/c/go/+/547475
Reviewed-by: Michael Pratt &lt;mpratt@google.com&gt;
Auto-Submit: Michael Knyszek &lt;mknyszek@google.com&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
(cherry picked from commit c915215af65897cc9cffed75630cbfbc6b2462cc)
Reviewed-on: https://go-review.googlesource.com/c/go/+/547636
Reviewed-by: Mauri de Souza Meneguzzo &lt;mauri870@gmail.com&gt;
TryBot-Bypass: Michael Knyszek &lt;mknyszek@google.com&gt;
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] runtime/pprof: fix generics function names</title>
<updated>2024-01-04T17:22:01Z</updated>
<author>
<name>Tolya Korniltsev</name>
<email>korniltsev.anatoly@gmail.com</email>
</author>
<published>2023-12-04T10:53:29Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=ad1ec60a5bae4e8afef7a5ee68fac80a758e4395'/>
<id>urn:sha1:ad1ec60a5bae4e8afef7a5ee68fac80a758e4395</id>
<content type='text'>
profileBuilder is using Frame-&gt;Function as key for checking if we already
emitted a function. However for generics functions it has dots there [...],
so sometimes for different functions with different generics types,
the profileBuilder emits wrong functions.

For #64528
For #64609

Change-Id: I8b39245e0b18f4288ce758c912c6748f87cba39a
Reviewed-on: https://go-review.googlesource.com/c/go/+/546815
Reviewed-by: Cherry Mui &lt;cherryyz@google.com&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Michael Pratt &lt;mpratt@google.com&gt;
(cherry picked from commit 20a03fc7130d8d99b513071c7e413b436ea649a2)
Reviewed-on: https://go-review.googlesource.com/c/go/+/549535
Auto-Submit: Matthew Dempsky &lt;mdempsky@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.21] os/signal: skip nohup tests on darwin builders</title>
<updated>2023-12-08T18:47:59Z</updated>
<author>
<name>Michael Pratt</name>
<email>mpratt@google.com</email>
</author>
<published>2023-11-01T15:55:10Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=bbab863ada264642e2755f123ef3f84a6b3451d0'/>
<id>urn:sha1:bbab863ada264642e2755f123ef3f84a6b3451d0</id>
<content type='text'>
The new LUCI builders have a temporary limitation that breaks nohup.
Skip nohup tests there.

For #63875.
Fixes #63911.

Cq-Include-Trybots: luci.golang.try:go1.21-darwin-amd64_13
Change-Id: Ia9ffecea7310f84a21f6138d8f8cdfc5e1392307
Reviewed-on: https://go-review.googlesource.com/c/go/+/538698
Reviewed-by: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
Reviewed-by: Dmitri Shuralyov &lt;dmitshur@google.com&gt;
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Bryan Mills &lt;bcmills@google.com&gt;
(cherry picked from commit a334c452731e7becc2dc879e253c7198202af126)
Reviewed-on: https://go-review.googlesource.com/c/go/+/546022
</content>
</entry>
<entry>
<title>[release-branch.go1.21] os/signal: remove go t.Run from TestNohup</title>
<updated>2023-12-07T20:35:27Z</updated>
<author>
<name>Michael Pratt</name>
<email>mpratt@google.com</email>
</author>
<published>2023-11-01T21:06:08Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=7dc67e8f2982a663046b3c1f494956a1d47e31c0'/>
<id>urn:sha1:7dc67e8f2982a663046b3c1f494956a1d47e31c0</id>
<content type='text'>
Since CL 226138, TestNohup has a bit of a strange construction: it wants
to run the "uncaught" subtests in parallel with each other, and the
"nohup" subtests in parallel with each other, but also needs join
between "uncaught" and "nohop" so it can Stop notifying for SIGHUP.

It achieves this by doing `go t.Run` with a WaitGroup rather than using
`t.Parallel` in the subtest (which would make `t.Run` return immediately).

However, this makes things more difficult to understand than necessary.
As noted on https://pkg.go.dev/testing#hdr-Subtests_and_Sub_benchmarks,
a second layer of subtest can be used to join parallel subtests.

Switch to this form, which makes the test simpler to follow
(particularly the cleanup that goes with "uncaught").

For #63799.
For #63911.

Change-Id: Ibfce0f439508a7cfca848c7ccfd136c9c453ad8b
Reviewed-on: https://go-review.googlesource.com/c/go/+/538899
LUCI-TryBot-Result: Go LUCI &lt;golang-scoped@luci-project-accounts.iam.gserviceaccount.com&gt;
Reviewed-by: Bryan Mills &lt;bcmills@google.com&gt;
(cherry picked from commit 5622a4b2054664edcdd64974b9df73b440aedfae)
Reviewed-on: https://go-review.googlesource.com/c/go/+/546021
</content>
</entry>
</feed>
