<feed xmlns='http://www.w3.org/2005/Atom'>
<title>go, branch go1.13.11</title>
<subtitle>Fork of Go programming language with my patches.</subtitle>
<id>http://git.kilabit.info/go/atom?h=go1.13.11</id>
<link rel='self' href='http://git.kilabit.info/go/atom?h=go1.13.11'/>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/'/>
<updated>2020-05-14T19:18:42Z</updated>
<entry>
<title>[release-branch.go1.13] go1.13.11</title>
<updated>2020-05-14T19:18:42Z</updated>
<author>
<name>Andrew Bonventre</name>
<email>andybons@golang.org</email>
</author>
<published>2020-05-14T18:13:47Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=237b6067c17ac3ef1e02632b77deefb5e9837cbb'/>
<id>urn:sha1:237b6067c17ac3ef1e02632b77deefb5e9837cbb</id>
<content type='text'>
Change-Id: I6fb5fbb3caf64e7d33412be4893edf8564e3a4de
Reviewed-on: https://go-review.googlesource.com/c/go/+/234001
Run-TryBot: Andrew Bonventre &lt;andybons@golang.org&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
Reviewed-by: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] cmd/compile: fix deallocation of live value copies in regalloc</title>
<updated>2020-04-28T16:29:29Z</updated>
<author>
<name>Michael Munday</name>
<email>mike.munday@ibm.com</email>
</author>
<published>2020-04-14T14:46:26Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=6b974e2bd3197bf6ff2245f5b24c0fccef352903'/>
<id>urn:sha1:6b974e2bd3197bf6ff2245f5b24c0fccef352903</id>
<content type='text'>
When deallocating the input register to a phi so that the phi
itself could be allocated to that register the code was also
deallocating all copies of that phi input value. Those copies
of the value could still be live and if they were the register
allocator could reuse them incorrectly to hold speculative
copies of other phi inputs. This causes strange bugs.

No test because this is a very obscure scenario that is hard
to replicate but CL 228060 adds an assertion to the compiler
that does trigger when running the std tests on linux/s390x
without this CL applied. Hopefully that assertion will prevent
future regressions.

Fixes #38442.

Change-Id: Id975dadedd731c7bb21933b9ea6b17daaa5c9e1d
Reviewed-on: https://go-review.googlesource.com/c/go/+/228061
Run-TryBot: Michael Munday &lt;mike.munday@ibm.com&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
Reviewed-by: Keith Randall &lt;khr@golang.org&gt;
(cherry picked from commit 382fe3e2498f2066400e7e7007aa9903440e339d)
Reviewed-on: https://go-review.googlesource.com/c/go/+/230358
</content>
</entry>
<entry>
<title>[release-branch.go1.13] go1.13.10</title>
<updated>2020-04-08T19:09:06Z</updated>
<author>
<name>Andrew Bonventre</name>
<email>andybons@golang.org</email>
</author>
<published>2020-04-08T17:55:51Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=a57f07aac237d366630e85d080ef1ce0c34f0d09'/>
<id>urn:sha1:a57f07aac237d366630e85d080ef1ce0c34f0d09</id>
<content type='text'>
Change-Id: I1ed1bc6652724d2e365f89de802c79ecc5c2660d
Reviewed-on: https://go-review.googlesource.com/c/go/+/227639
Run-TryBot: Andrew Bonventre &lt;andybons@golang.org&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
Reviewed-by: Alexander Rakoczy &lt;alex@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] runtime: fix rounding in materializeGCProg</title>
<updated>2020-04-07T20:06:38Z</updated>
<author>
<name>Austin Clements</name>
<email>austin@google.com</email>
</author>
<published>2020-02-26T20:12:33Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=3a275aab75e40735c6c0184c1a61d4db0016d0a7'/>
<id>urn:sha1:3a275aab75e40735c6c0184c1a61d4db0016d0a7</id>
<content type='text'>
materializeGCProg allocates a temporary buffer for unrolling a GC
program. Unfortunately, when computing the size of the buffer, it
rounds *down* the number of bytes needed to store bitmap before
rounding up the number of pages needed to store those bytes. The fact
that it rounds up to pages usually mitigates the rounding down, but
the type from #37470 exists right on the boundary where this doesn't
work:

type Sequencer struct {
	htable [1 &lt;&lt; 17]uint32
	buf    []byte
}

On 64-bit, this GC bitmap is exactly 8 KiB of zeros, followed by three
one bits. Hence, this needs 8193 bytes of storage, but the current
math in materializeGCProg rounds *down* the three one bits to 8192
bytes. Since this is exactly pageSize, the next step of rounding up to
the page size doesn't mitigate this error, and materializeGCProg
allocates a buffer that is one byte too small. runGCProg then writes
one byte past the end of this buffer, causing either a segfault (if
you're lucky!) or memory corruption.

Updates #37470.
Fixes #37483.

Change-Id: Iad24c463c501cd9b1dc1924bc2ad007991a094a0
Reviewed-on: https://go-review.googlesource.com/c/go/+/224418
Run-TryBot: Austin Clements &lt;austin@google.com&gt;
Reviewed-by: Cherry Zhang &lt;cherryyz@google.com&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] cmd/go: make module zip extraction more robust</title>
<updated>2020-04-07T20:06:16Z</updated>
<author>
<name>Jay Conrod</name>
<email>jayconrod@google.com</email>
</author>
<published>2020-02-28T21:31:19Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=2f6dd92c1ef5a202a3d13ff16254d2a3d7b03c02'/>
<id>urn:sha1:2f6dd92c1ef5a202a3d13ff16254d2a3d7b03c02</id>
<content type='text'>
Currently, we extract module zip files to temporary directories, then
atomically rename them into place. On Windows, this can fail with
ERROR_ACCESS_DENIED if another process (antivirus) has files open
before the rename. In CL 220978, we repeated the rename operation in a
loop over 500 ms, but this didn't solve the problem for everyone.

A better solution will extract module zip files to their permanent
locations in the cache and will keep a ".partial" marker file,
indicating when a module hasn't been fully extracted (CL 221157).
This approach is not safe if current versions of Go access the module
cache concurrently, since the module directory is detected with a
single os.Stat.

In the interim, this CL makes two changes:

1. Flaky file system operations are repeated over 2000 ms to reduce
the chance of this error occurring.
2. cmd/go will now check for .partial files created by future
versions. If a .partial file is found, it will lock the lock file,
then remove the .partial file and directory if needed.

After some time has passed and Go versions lacking this CL are no
longer supported, we can start extracting module zip files in place.

Updates #37802

Change-Id: I467ee11aa59a90b63cf0e3e761c4fec89d57d3b6
Reviewed-on: https://go-review.googlesource.com/c/go/+/221820
Run-TryBot: Jay Conrod &lt;jayconrod@google.com&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
Reviewed-by: Michael Matloob &lt;matloob@golang.org&gt;
Reviewed-by: Bryan C. Mills &lt;bcmills@google.com&gt;
(cherry picked from commit 093049b3709eda7537ece92a2991918cf53782d6)
Reviewed-on: https://go-review.googlesource.com/c/go/+/223146
</content>
</entry>
<entry>
<title>[release-branch.go1.13] runtime: fix wrong offset when calling ppc64x nanotime syscall</title>
<updated>2020-04-03T22:09:47Z</updated>
<author>
<name>Carlos Eduardo Seo</name>
<email>cseo@linux.vnet.ibm.com</email>
</author>
<published>2020-01-17T20:59:59Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=b79c36dc9949177aa6e2e33fe5af61d4461676a4'/>
<id>urn:sha1:b79c36dc9949177aa6e2e33fe5af61d4461676a4</id>
<content type='text'>
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 &lt;tobias.klauser@gmail.com&gt;
(cherry picked from commit 71239b4f491698397149868c88d2c851de2cd49b)
Reviewed-on: https://go-review.googlesource.com/c/go/+/227179
Reviewed-by: Carlos Eduardo Seo &lt;cseo@linux.vnet.ibm.com&gt;
Run-TryBot: Ian Lance Taylor &lt;iant@golang.org&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] cmd/go: fix and skip known Windows test failures</title>
<updated>2020-03-31T23:11:12Z</updated>
<author>
<name>Dmitri Shuralyov</name>
<email>dmitshur@golang.org</email>
</author>
<published>2020-03-17T21:50:25Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=9ed3fb84bc6148590757995c651bd4a6e85b4531'/>
<id>urn:sha1:9ed3fb84bc6148590757995c651bd4a6e85b4531</id>
<content type='text'>
These non-short Windows test failures were resolved fully in CL 206144.

Both TestScript/build_trimpath and TestScript/version tests can be fixed
by backporting the changes to test scripts only, so that is done here.

Fixing TestScript/mod_list_dir requires backporting non-test changes in
addition to the test script changes, which is unlikely to be appropriate
this late in Go 1.13 release cycle. A failing test can cover up other
regressions, so skip this known failing test to fix the builder.

For #36181.

Change-Id: I4f140bd373554eb4664f04638666dee77986ec3e
Reviewed-on: https://go-review.googlesource.com/c/go/+/223782
Run-TryBot: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
TryBot-Result: Gobot Gobot &lt;gobot@golang.org&gt;
Reviewed-by: Jay Conrod &lt;jayconrod@google.com&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] cmd/doc: skip failing TestDotSlashLookup on Windows</title>
<updated>2020-03-31T23:07:59Z</updated>
<author>
<name>Dmitri Shuralyov</name>
<email>dmitshur@golang.org</email>
</author>
<published>2020-03-17T14:22:41Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=c67f9cc6c0753bf4aa994edfe09e869c7268b5d1'/>
<id>urn:sha1:c67f9cc6c0753bf4aa994edfe09e869c7268b5d1</id>
<content type='text'>
This test was fixed by changing cmd/doc behavior in CL 204442.

Backporting that non-test code change is unlikely to be appropriate
this late in Go 1.13 release cycle. A failing test can cover up other
regressions, so skip this known failing test to fix the builder.

For #35236.
For #36181.

Change-Id: I07e795e75d7e37bc96ab68607d5d5cc9254342f8
Reviewed-on: https://go-review.googlesource.com/c/go/+/223780
Run-TryBot: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
Reviewed-by: Alexander Rakoczy &lt;alex@golang.org&gt;
Reviewed-by: Carlos Amedee &lt;carlos@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] cmd/compile/internal/syntax: don't hardwire path separator in test</title>
<updated>2020-03-31T23:07:15Z</updated>
<author>
<name>Robert Griesemer</name>
<email>gri@golang.org</email>
</author>
<published>2019-10-28T23:55:06Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=5a31a971f32e390bd3664898c03b23f5b6a7c27d'/>
<id>urn:sha1:5a31a971f32e390bd3664898c03b23f5b6a7c27d</id>
<content type='text'>
Windows uses '\' not '/'.

For #35175.
Fixes #37901.

Change-Id: Ib3d01dcf148fc0675496d5213f5bcc9cf210a6fc
Reviewed-on: https://go-review.googlesource.com/c/go/+/203889
Reviewed-by: Bryan C. Mills &lt;bcmills@google.com&gt;
Run-TryBot: Brad Fitzpatrick &lt;bradfitz@golang.org&gt;
(cherry picked from commit a754d2993db1771ca3903d0a5d0e3add1883cf9b)
Reviewed-on: https://go-review.googlesource.com/c/go/+/223703
Reviewed-by: Robert Griesemer &lt;gri@golang.org&gt;
Run-TryBot: Andrew Bonventre &lt;andybons@golang.org&gt;
</content>
</entry>
<entry>
<title>[release-branch.go1.13] os: use an actual RemoveAll failure in TestRemoveAllWithMoreErrorThanReqSize</title>
<updated>2020-03-31T23:05:42Z</updated>
<author>
<name>Bryan C. Mills</name>
<email>bcmills@google.com</email>
</author>
<published>2019-10-25T19:37:00Z</published>
<link rel='alternate' type='text/html' href='http://git.kilabit.info/go/commit/?id=f353662952b48af110dc878adfa533745e168716'/>
<id>urn:sha1:f353662952b48af110dc878adfa533745e168716</id>
<content type='text'>
Previously we injected an error, and the injection points were
(empirically) not realistic on some platforms.

Instead, we now make the directory read-only, which (on most
platforms) suffices to prevent the removal of its files.

Also remove unused test hook, as was done in CL 204060.

For #35117.
For #29921.
Fixes #37895.

Change-Id: Ica4e2818566f8c14df3eed7c3b8de5c0abeb6963
Reviewed-on: https://go-review.googlesource.com/c/go/+/203502
Reviewed-by: Ian Lance Taylor &lt;iant@golang.org&gt;
Reviewed-by: Brad Fitzpatrick &lt;bradfitz@golang.org&gt;
(cherry picked from commit 06bdd52f7540eca9e3ade6e78234d00703f3ee23)
Reviewed-on: https://go-review.googlesource.com/c/go/+/223700
Run-TryBot: Dmitri Shuralyov &lt;dmitshur@golang.org&gt;
Reviewed-by: Alexander Rakoczy &lt;alex@golang.org&gt;
</content>
</entry>
</feed>
