- 29 Jan, 2019 3 commits
-
-
kim yongbin authored
Change-Id: Iaf67fcbb145277327e24150b29ff38f6c65f6a03 Reviewed-on: https://go-review.googlesource.com/c/155781Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
Updates #28242 Change-Id: Ib717b64f1f368cc889895a2437ff2943ed4eab0d Reviewed-on: https://go-review.googlesource.com/c/159998 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Daniel Martí <mvdan@mvdan.cc>
-
Austin Clements authored
Currently, if an assembly file includes a static reference to an undefined symbol, and another package also has an undefined reference to that symbol, the linker can report an error like: x: relocation target zero not defined for ABI0 (but is defined for ABI0) Since the symbol is referenced in another package, the code in ErrorUnresolved that looks for alternative ABI symbols finds that symbol in the symbol table, but doesn't check that it's actually defined, which is where the "but is defined for ABI0" comes from. The "not defined for ABI0" is because ErrorUnresolved failed to turn the static symbol's version back into an ABI, and it happened to print the zero value for an ABI. This CL fixes both of these problems. It explicitly maps the relocation version back to an ABI and detects if it can't be mapped back (e.g., because it's a static reference). Then, if it finds a symbol with a different ABI in the symbol table, it checks to make sure it's a definition, and not simply an unresolved reference. Fixes #29852. Change-Id: Ice45cc41c1907919ce5750f74588e8047eaa888c Reviewed-on: https://go-review.googlesource.com/c/159518 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 28 Jan, 2019 2 commits
-
-
Ian Lance Taylor authored
Updates #29919 Change-Id: Ibf92c9957f71394f08c1203a29eae35a12021585 Reviewed-on: https://go-review.googlesource.com/c/159877 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
Keith Randall authored
Change-Id: I824b42a1c1fdcee8712681ffc6316470761be065 Reviewed-on: https://go-review.googlesource.com/c/159858Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 27 Jan, 2019 4 commits
-
-
Alex Brainman authored
TestIssue29372 is broken on windows when temporary directory has symlink in its path. Adjust the test to use filepath.EvalSymlinks of temporary directory, instead of temporary directory on windows. This change is not a proper fix, but at least it makes TestIssue29372 pass on windows-arm. See issue for details. Updates #29746 Change-Id: I2af8ebb89da7cb9daf027a5e49e32ee22dbd0e3d Reviewed-on: https://go-review.googlesource.com/c/159578 Run-TryBot: Alex Brainman <alex.brainman@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Keith Randall authored
Treat compiler-generated init functions as wrappers, so they will not be shown in tracebacks. The exception to this rule is that we'd like to show the line number of initializers for global variables in tracebacks. In order to preserve line numbers for those cases, separate out the code for those initializers into a separate function (which is not marked as autogenerated). This CL makes the go binary 0.2% bigger. Fixes #29919 Change-Id: I0f1fbfc03d10d764ce3a8ddb48fb387ca8453386 Reviewed-on: https://go-review.googlesource.com/c/159717 Run-TryBot: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Ian Lance Taylor authored
Whether a truncation should become a MOVWreg or a MOVWZreg doesn't depend on the type of the operand, it depends on the type of the final result. If the final result is unsigned, we can use MOVWZreg. If the final result is signed, we can use MOVWreg. Checking the type of the operand does the wrong thing if truncating an unsigned value to a signed value, or vice-versa. Fixes #29943 Change-Id: Ia6fc7d006486fa02cffd0bec4d910bdd5b6365f8 Reviewed-on: https://go-review.googlesource.com/c/159760 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Keith Randall <khr@golang.org>
-
GiantsLoveDeathMetal authored
Trivial typo Change-Id: I3804f365519453bfa19997f55ead34742ac1a9db GitHub-Last-Rev: 0e04e928d05121099b78a2cefc1cb7531f6a7650 GitHub-Pull-Request: golang/go#29930 Reviewed-on: https://go-review.googlesource.com/c/159479Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
-
- 25 Jan, 2019 2 commits
-
-
Ian Lance Taylor authored
Updates #28152 Fixes #29927 Change-Id: Iea692c90074d057a1733e98bca3928e8f3569585 Reviewed-on: https://go-review.googlesource.com/c/159557 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
yo-tak authored
Fixes #26533 Change-Id: I5a48d667d474f3f222f9055e51131561a0cf45b6 Reviewed-on: https://go-review.googlesource.com/c/138757 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 23 Jan, 2019 6 commits
-
-
Bryan C. Mills authored
Fixes #28753 Updates #29628 Change-Id: I4a561be7d491a0d088e656b00151ae1bdbd16a84 Reviewed-on: https://go-review.googlesource.com/c/158357 Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Russ Cox <rsc@golang.org>
-
Filippo Valsorda authored
If beta8 is unusually large, the addition loop might take a very long time to bring x3-beta8 back positive. This would lead to a DoS vulnerability in the implementation of the P-521 and P-384 elliptic curves that may let an attacker craft inputs to ScalarMult that consume excessive amounts of CPU. This fixes CVE-2019-6486. Fixes #29903 Change-Id: Ia969e8b5bf5ac4071a00722de9d5e4d856d8071a Reviewed-on: https://team-review.git.corp.google.com/c/399777Reviewed-by: Adam Langley <agl@google.com> Reviewed-by: Julie Qiu <julieqiu@google.com> Reviewed-on: https://go-review.googlesource.com/c/159218Reviewed-by: Julie Qiu <julie@golang.org>
-
Brad Fitzpatrick authored
Updates bundled http2 to x/net git rev ed066c81e7 for: http2: Revert a closed stream cannot receive data https://golang.org/cl/153977 Updates golang/go#28204 Change-Id: I0a489e4e8a581a107970199f64f0fa9281982efe Reviewed-on: https://go-review.googlesource.com/c/159179 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
-
Brad Fitzpatrick authored
This is a more conservative version of the reverted CL 99135 (which was reverted in CL 137716) The net/url part rejects URLs with ASCII CTLs from being parsed and the net/http part rejects writing them if a bogus url.URL is constructed otherwise. Updates #27302 Updates #22907 Change-Id: I09a2212eb74c63db575223277aec363c55421ed8 Reviewed-on: https://go-review.googlesource.com/c/159157 Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Filippo Valsorda <filippo@golang.org>
-
Daniel Martí authored
I needed Go 1.10 to debug and fix a test failure on that Go version in x/tools, but I forgot what the magic 'go get' command for this was. Googling "download specific golang version" and similar keywords showed no results, presumably because the golang.org/dl subrepo isn't prominently recommended nor documented anywhere. The most appropriate documentation page to add this to is doc/install, since it goes into some detail and is well indexed. We only need a short section to introduce the trick. The example does mention a specific version, Go 1.10.7, but I couldn't imagine a way to make it version-agnostic while still being clear on what the commands effectively do. Change-Id: I13158564d76d95caec412cdb35a50a4356df5863 Reviewed-on: https://go-review.googlesource.com/c/157457Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Elias Naur authored
Change-Id: I0eefaed645d5d1f56c408af496c92dbb799977c8 Reviewed-on: https://go-review.googlesource.com/c/159037 Run-TryBot: Elias Naur <elias.naur@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 22 Jan, 2019 3 commits
-
-
Keith Randall authored
They can't be used, so we don't need code generated for them. We just need to report errors in their bodies. This is the minimal CL for 1.12. For 1.13, CL 158845 will remove a bunch of special cases sprinkled about the compiler to handle "_" functions, which should (after this CL) be unnecessary. Update #29870 Change-Id: Iaa1c194bd0017dffdce86589fe2d36726ee83c13 Reviewed-on: https://go-review.googlesource.com/c/158820 Run-TryBot: Keith Randall <khr@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Filippo Valsorda authored
ConstantTimeCompare is fairly useless if you can't rely on it being zero when the slices are different, but thankfully it has that property thanks to the final ConstantTimeByteEq. Change-Id: Id51100ed7d8237abbbb15778a259065b162a48ad Reviewed-on: https://go-review.googlesource.com/c/158643Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Adam Langley <agl@golang.org>
-
Dmitri Shuralyov authored
This CL attempts to restore the clarity of the original specification at https://golang.org/s/generatedcode that the line may appear anywhere. It is preferable (for human readability), and most common for it to be early in the file, but that is merely a convention, not a strict well-specified requirement. Document it as so. Background Issue #13560 was a proposal define a standard for marking files as generated, one that is suitable to be recognized both by humans and machine tools. It was accepted, and the final specification was documented at https://golang.org/s/generatedcode. Its text, copied exactly: Generated files are marked by a line of text that matches the regular expression, in Go syntax: ^// Code generated .* DO NOT EDIT\.$ The .* means the tool can put whatever folderol it wants in there, but the comment must be a single line and must start with Code generated and end with DO NOT EDIT., with a period. The text may appear anywhere in the file. The https://golang.org/s/generatedcode link points to a comment in a very large GitHub issue. That makes it harder to find. Issue #25433 was opened about moving that information somewhere else. It was resolved via CL 118756, which added text to cmd/go documentation at https://golang.org/cmd/go/#hdr-Generate_Go_files_by_processing_source: To convey to humans and machine tools that code is generated, generated source should have a line early in the file that matches the following regular expression (in Go syntax): ^// Code generated .* DO NOT EDIT\.$ The CL description noted that "This change merely moves that information to a more visible place." The intention was to preserve the specification unmodified. The original specification was very clear that "The text may appear anywhere in the file." The new text in cmd/go documentation wasn't very clear. "A line early in the file" is not a precise enough criteria to be recognized by a machine tool, because there isn't a precise definition of what lines are "early in the file". Updates #13560 Updates #25433 Updates #28089 Change-Id: I4e374163b16c3f972f9591ec2647fd3d5a2dd5ae Reviewed-on: https://go-review.googlesource.com/c/158817Reviewed-by: Rob Pike <r@golang.org>
-
- 21 Jan, 2019 3 commits
-
-
Elias Naur authored
Change-Id: I27ef49815f55a36379b730b77f7e9a4dd5341507 Reviewed-on: https://go-review.googlesource.com/c/158777 Run-TryBot: Elias Naur <elias.naur@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Tobias Klauser authored
CL 158457 added a duplicate entry for the ",\n" -> "," replacement to gofmtLineReplacer. Remove the duplicate. Change-Id: I17684fcd19cbc96fa7a7b53bf7c1a6382bf1114f Reviewed-on: https://go-review.googlesource.com/c/158619 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Aaron Cannon authored
The existing docs only mention that it is possible to change the output destination of PrintDefaults from the default of standard error, but fail to mention how to actually do so. This change fixes this lack by directing users to CommandLine.SetOutput. Fixes #15024 Change-Id: Ieaa7edbebd23d4ea6fa7e53d97a87143d590bdb3 Reviewed-on: https://go-review.googlesource.com/c/145203Reviewed-by: Rob Pike <r@golang.org>
-
- 20 Jan, 2019 2 commits
-
-
Filippo Valsorda authored
Fixes #29779 Change-Id: I7eb8b4db187597e07d8ec7d3ff651f008e2ca433 Reviewed-on: https://go-review.googlesource.com/c/158639 Run-TryBot: Filippo Valsorda <filippo@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Change-Id: I2324f6f51d2bf8a4ae1b139b3933bc78dfa75835 Reviewed-on: https://go-review.googlesource.com/c/158718 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
- 18 Jan, 2019 8 commits
-
-
Filippo Valsorda authored
Updates #29779 Change-Id: I9becaba41ab4cd0bac25b4bedf3f8b19761d8158 Reviewed-on: https://go-review.googlesource.com/c/158638Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Filippo Valsorda authored
Fixes #29349 Change-Id: Iec16eb2b20b43250249ec85c3d78fd64d1b6e3f3 Reviewed-on: https://go-review.googlesource.com/c/158637Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Hana (Hyang-Ah) Kim authored
This is about a minor change but worthy of note because this may affect the profile results users will see. Change-Id: Ie2c4358b248f868662dbc71db587576481aa7238 Reviewed-on: https://go-review.googlesource.com/c/158577Reviewed-by: Raul Silvera <rauls5382@gmail.com> Reviewed-by: Austin Clements <austin@google.com>
-
tkivisik authored
Renamed from github user to use my real name in CONTRIBUTORS, added my name to AUTHORS. Change-Id: I671638f1525d44bcc2b0a08d0dcff6adb1717510 GitHub-Last-Rev: b989e185de9ad2d1207085043fcdc821d851c562 GitHub-Pull-Request: golang/go#29823 Reviewed-on: https://go-review.googlesource.com/c/158540Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Raul Silvera authored
Remove an unnecessary check on the heap sampling code that forced sampling of all heap allocations larger than the sampling rate. This need to follow a poisson process so that they can be correctly unsampled. Maintain a check for MemProfileRate==1 to provide a mechanism for full sampling, as documented in https://golang.org/pkg/runtime/#pkg-variables. Additional testing for this change is on cl/129117. Fixes #26618 Change-Id: I7802bde2afc655cf42cffac34af9bafeb3361957 GitHub-Last-Rev: 471f747af845395d458096bea26daa93b91120be GitHub-Pull-Request: golang/go#29791 Reviewed-on: https://go-review.googlesource.com/c/158337 Run-TryBot: Austin Clements <austin@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Hyang-Ah Hana Kim <hyangah@gmail.com>
-
Ian Lance Taylor authored
Fixes #29263 Change-Id: I06ba135dc491fd01fc06ccaad4ef98103d4b86c4 Reviewed-on: https://go-review.googlesource.com/c/154460 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
-
Ian Lance Taylor authored
Fixes #29781 Change-Id: Id032d07a54b8c24f0c6d3f6e512932f76920ee04 Reviewed-on: https://go-review.googlesource.com/c/158457 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Brad Fitzpatrick authored
Updates #26095 (or fixes it) Change-Id: I92488dabe823b82e1ba534648fe6d63d25d0ae9f Reviewed-on: https://go-review.googlesource.com/c/158417Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 17 Jan, 2019 6 commits
-
-
Robert Griesemer authored
Updates #29799. Change-Id: I267c2c3ba3964e96903954affc248d0c52c4916c Reviewed-on: https://go-review.googlesource.com/c/158397Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Michael Anthony Knyszek authored
As a result of changes earlier in Go 1.12, the scavenger became much more aggressive. In particular, when scavenged and unscavenged spans coalesced, they would always become scavenged. This resulted in most spans becoming scavenged over time. While this is good for keeping the RSS of the program low, it also causes many more undue page faults and many more calls to madvise. For most applications, the impact of this was negligible. But for applications that repeatedly grow and shrink the heap by large amounts, the overhead can be significant. The overhead was especially obvious on older versions of Linux where MADV_FREE isn't available and MADV_DONTNEED must be used. This change makes it so that scavenged spans will never coalesce with unscavenged spans. This results in fewer page faults overall. Aside from this, the expected impact of this change is more heap growths on average, as span allocations will be less likely to be fulfilled. To mitigate this slightly, this change also coalesces spans eagerly after scavenging, to at least ensure that all scavenged spans and all unscavenged spans are coalesced with each other. Also, this change adds additional logic in the case where two adjacent spans cannot coalesce. In this case, on platforms where the physical page size is larger than the runtime's page size, we realign the boundary between the two adjacent spans to a physical page boundary. The advantage of this approach is that "unscavengable" spans, that is, spans which cannot be scavenged because they don't cover at least a single physical page are grown to a size where they have a higher likelihood of being discovered by the runtime's scavenging mechanisms when they border a scavenged span. This helps prevent the runtime from accruing pockets of "unscavengable" memory in between scavenged spans, preventing them from coalescing. We specifically choose to apply this logic to all spans because it simplifies the code, even though it isn't strictly necessary. The expectation is that this change will result in a slight loss in performance on platforms where the physical page size is larger than the runtime page size. Update #14045. Change-Id: I64fd43eac1d6de6f51d7a2ecb72670f10bb12589 Reviewed-on: https://go-review.googlesource.com/c/158078 Run-TryBot: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
Michael Anthony Knyszek authored
Currently the code surrounding coalescing is duplicated between merging with the span before the span considered for coalescing and merging with the span after. This change factors out the shared portions of these codepaths into a local closure which acts as a helper. Change-Id: I7919fbed3f9a833eafb324a21a4beaa81f2eaa91 Reviewed-on: https://go-review.googlesource.com/c/158077 Run-TryBot: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
Michael Anthony Knyszek authored
The coalescing process is complex and in a follow-up change we'll need to do it in more than one place, so this change factors out the coalescing code in freeSpanLocked into a method on mheap. Change-Id: Ia266b6cb1157c1b8d3d8a4287b42fbcc032bbf3a Reviewed-on: https://go-review.googlesource.com/c/157838 Run-TryBot: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
Austin Clements authored
The ABI changes should be completely transparent to Go code, but could cause linking issues in certain situations involving assembly code reaching across package boundaries. If users encounter linking problems, point them to the "Compatibility" section of the ABI design document, which gives some guidance. Change-Id: I4156d164562e2ec0de7ae8f9a3631a32ec45b317 Reviewed-on: https://go-review.googlesource.com/c/158237Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
Ian Lance Taylor authored
Updates #29388 Change-Id: Icb0e6048d05fde7a5486b923ff62147edb5c8dac Reviewed-on: https://go-review.googlesource.com/c/157617 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Damien Neil <dneil@google.com>
-
- 16 Jan, 2019 1 commit
-
-
Clément Chigot authored
On aix/ppc64, if the server closes before the client calls Accept, this test will fail. Increasing the time before the server closes should resolve this timeout. Updates #29685 Change-Id: Iebb849d694fc9c37cf216ce1f0b8741249b98016 Reviewed-on: https://go-review.googlesource.com/c/158038Reviewed-by: Ian Lance Taylor <iant@golang.org>
-