aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-09-25go1.3.2go1.3.2Andrew Gerrand
2014-09-25[release-branch.go1.3] doc: document Go 1.3.2Andrew Gerrand
2014-09-25[release-branch.go1.3] crypto/tls: ensure that we don't resume when tickets ↵Andrew Gerrand
are disabled A security bug affects programs that use crypto/tls to implement a TLS server from Go 1.1 onwards. If the server enables TLS client authentication using certificates (this is rare) and explicitly sets SessionTicketsDisabled to true in the tls.Config, then a malicious client can falsely assert ownership of any client certificate it wishes. This issue was discovered internally and there is no evidence of exploitation. Change authored by Adam Langley <agl@golang.org> https://golang.org/cl/148080043/
2014-09-26[release-branch.go1.3] runtime: keep g->syscallsp consistent after cgo->Go ↵Russ Cox
callbacks This is a manual backport of CL 131910043 to the Go 1.3 release branch. We believe this CL can cause arbitrary corruption in programs that call into C from Go and then call back into Go from C. This change will be released in Go 1.3.2. LGTM=iant R=iant, hector CC=adg, dvyukov, golang-codereviews, r https://golang.org/cl/142690043
2014-09-25[release-branch.go1.3] net/http/httptest: disable TestIssue7264Russ Cox
This fails on my OS X machine, just like it did in default branch. In the default branch we removed the test. It's just buggy. LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/144610043
2014-08-15[release-branch.go1.3] doc: make it point to correct go1.3.1 change historyAndrew Gerrand
««« CL 129180043 / cf5017c4a780 doc: make it point to correct go1.3.1 change history LGTM=minux, adg R=golang-codereviews, minux, adg CC=golang-codereviews https://golang.org/cl/129180043 »»» TBR=r CC=golang-codereviews https://golang.org/cl/122670043
2014-08-15[release-branch.go1.3] doc: remove the "the" in "the the" in the release notesAndrew Gerrand
««« CL 128170043 / f824bdf8e6ba doc: remove the "the" in "the the" in the release notes LGTM=r R=r CC=golang-codereviews https://golang.org/cl/128170043 »»» TBR=r CC=golang-codereviews https://golang.org/cl/128290043
2014-08-13[release-branch.go1.3] undo 941ef9ddbada / 125150044Andrew Gerrand
It broke the build across all platforms. The original change wasn't even reviewed. Probably should never have been ported to this branch. LGTM=r R=r CC=golang-codereviews https://golang.org/cl/128130043
2014-08-13[release-branch.go1.3] runtime: fix GC bitmap corruptionAndrew Gerrand
««« CL 103640044 / d2f256096d8d runtime: fix GC bitmap corruption Fixes #8299. R=golang-codereviews CC=golang-codereviews, khr, rsc https://golang.org/cl/103640044 »»» TBR=r, rsc CC=golang-codereviews https://golang.org/cl/125150044
2014-08-13[release-branch.go1.3] net: prevent spurious on-connect events via epoll on ↵go1.3.1Andrew Gerrand
linux ««« CL 120820043 / 06a4b59c1393 net: prevent spurious on-connect events via epoll on linux On Linux, adding a socket descriptor to epoll instance before getting the EINPROGRESS return value from connect system call could be a root cause of spurious on-connect events. See golang.org/issue/8276, golang.org/issue/8426 for further information. All credit to Jason Eggleston <jason@eggnet.com> Fixes #8276. Fixes #8426. LGTM=dvyukov R=dvyukov, golang-codereviews, adg, dave, iant, alex.brainman CC=golang-codereviews https://golang.org/cl/120820043 »»» TBR=r, rsc CC=golang-codereviews https://golang.org/cl/128110045
2014-08-13[release-branch.go1.3] doc: document go1.3.1Andrew Gerrand
««« CL 126060043 / e3cf4c202bd8 doc: document go1.3.1 LGTM=r R=r, rsc CC=golang-codereviews https://golang.org/cl/126060043 »»» TBR=rsc R=rsc CC=golang-codereviews https://golang.org/cl/126070043
2014-08-13go1.3.1Andrew Gerrand
LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/129020043
2014-08-13[release-branch.go1.3] cmd/gc: make liveness ~10x fasterAndrew Gerrand
««« CL 125720043 / b92e5df7d3ba cmd/gc: make liveness ~10x faster 1) The arrayindexof lookup function is O(n). Replace with O(1) lookups. 2) The checkptxt function is O(n²) and is purely for debugging. Only run when the debugging flags are turned on. 3) Iterating over sparse bitmaps can be done faster word by word. Introduce and use bvnext for that. Run times before and after, on my 2.5 GHz Core i5 MacBook Pro. x.go 9.48 0.84 issue 8259 x100.go 0.01 0.01 issue 8354 x1000.go 0.10 0.10 x2000.go 0.62 0.19 x3000.go 1.33 0.34 x4000.go 2.29 0.49 x5000.go 3.89 0.67 x6000.go 5.00 0.90 x7000.go 6.70 1.13 x8000.go 9.44 1.38 x9000.go 11.23 1.87 x10000.go 13.78 2.09 Fixes #8259. Fixes #8354. LGTM=iant, r R=golang-codereviews, iant, r CC=golang-codereviews https://golang.org/cl/125720043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/121600043
2014-08-12[release-branch.go1.3] cmd/8g: fix buildAndrew Gerrand
««« CL 129720043 / 0449858880be cmd/8g: fix build Fixes #8510. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/129720043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/129760043
2014-08-12[release-branch.go1.3] runtime: ignore exceptions from foreign threads.Andrew Gerrand
««« CL 104200046 / 14683b1cf2cc runtime: ignore exceptions from foreign threads. Fixes #8224. LGTM=alex.brainman, rsc R=alex.brainman, rsc, dave CC=golang-codereviews https://golang.org/cl/104200046 »»» LGTM=alex.brainman, minux R=rsc, alex.brainman, minux CC=golang-codereviews https://golang.org/cl/126010043
2014-08-12[release-branch.go1.3] cmd/6g, cmd/8g: fix, test byte-sized magic multiplyAndrew Gerrand
««« CL 124950043 / 8e5ec6948793 cmd/6g, cmd/8g: fix, test byte-sized magic multiply Credit to Rémy for finding and writing test case. Fixes #8325. LGTM=r R=golang-codereviews, r CC=dave, golang-codereviews, iant, remyoudompheng https://golang.org/cl/124950043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/126000043
2014-08-12[release-branch.go1.3] doc: document new ParseMultipartForm behaviorAndrew Gerrand
««« CL 123860043 / cf99a05f0fbc doc: document new ParseMultipartForm behavior Fixes #8403. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/123860043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/127070043
2014-08-12[release-branch.go1.3] runtime: turn off 'unexpected return pc' print on arm ↵Andrew Gerrand
traceback ««« CL 118670043 / 671fa8a9eb80 runtime: turn off 'unexpected return pc' print on arm traceback It can happen legitimately if a profiling signal arrives at just the wrong moment. It's harmless. Fixes #8153. LGTM=minux R=golang-codereviews, minux CC=golang-codereviews, iant, r https://golang.org/cl/118670043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/127950044
2014-08-12[release-branch.go1.3] crypto/rsa: fix out-of-bound access with short ↵Andrew Gerrand
session keys. ««« CL 102670044 / c5f72a685e25 crypto/rsa: fix out-of-bound access with short session keys. Thanks to Cedric Staub for noting that a short session key would lead to an out-of-bounds access when conditionally copying the too short buffer over the random session key. LGTM=davidben, bradfitz R=davidben, bradfitz CC=golang-codereviews https://golang.org/cl/102670044 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/128930044
2014-08-12[release-branch.go1.3] cmd/cgo: fix recursive type mappingAndrew Gerrand
««« CL 122850043 / 0015a2541545 cmd/cgo: fix recursive type mapping Instead of immediately completing pointer type mappings, add them to a queue to allow them to be completed later. This fixes issues caused by Type() returning arbitrary in-progress type mappings. Fixes #8368. Fixes #8441. LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/122850043 »»» TBR=rsc R=rsc CC=golang-codereviews https://golang.org/cl/128940043
2014-08-12[release-branch.go1.3] include/u.h: define _DEFAULT_SOURCE for new glibcAndrew Gerrand
««« CL 112530043 / c8059ac4e0ec include/u.h: define _DEFAULT_SOURCE for new glibc glibc devs have apparently decided _BSD_SOURCE will be deprecated on Linux, and issue a preprocessor warning if declaring _BSD_SOURCE without _DEFAULT_SOURCE. https://sourceware.org/glibc/wiki/Release/2.20 Fixes #8397. LGTM=iant R=dave, gobot, iant CC=golang-codereviews https://golang.org/cl/112530043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/124150043
2014-08-12[release-branch.go1.3] net: Don't read beyond end of slice when parsing ↵Andrew Gerrand
resolv.conf options. ««« CL 102470046 / 5207b394de96 net: Don't read beyond end of slice when parsing resolv.conf options. Fixes #8252. LGTM=adg R=ruiu, josharian, adg CC=golang-codereviews https://golang.org/cl/102470046 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/124140043
2014-08-12[release-branch.go1.3] runtime: fix nacl amd64p32 flakinessAndrew Gerrand
««« CL 102710043 / 5640e19d768d runtime: fix nacl amd64p32 flakiness newproc takes two extra pointers, not two extra registers. On amd64p32 (nacl) they are different. We diagnosed this before the 1.3 cut but the tree was frozen. I believe this is causing the random problems on the builder. Fixes #8199. TBR=r CC=golang-codereviews https://golang.org/cl/102710043 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/124120044
2014-08-01compress/{gzip,zlib}: mention that Close flushesAndrew Gerrand
Our other CloseFlushers (archive/tar, compress/flate) do mention this. LGTM=dave, r R=r, dave CC=golang-codereviews https://golang.org/cl/117430043
2014-07-25[release-branch.go1.3] doc: drop scheme from links that are known to support ↵Andrew Gerrand
HTTPS ««« CL 112650043 / bdac8d858e74 doc: drop scheme from links that are known to support HTTPS golang.org now serves HTTPS with a valid cert, so it's reasonable that users should click through to the HTTPS versions of *.golang.org and other known sites. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/112650043 »»» TBR=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/111700043
2014-06-19go1.3go1.3Andrew Gerrand
LGTM=rsc R=golang-codereviews, minux, rsc CC=golang-codereviews https://golang.org/cl/104250043
2014-06-19doc: document Go 1.3Andrew Gerrand
TBR=r R=golang-codereviews CC=golang-codereviews https://golang.org/cl/101370043
2014-06-19[release-branch.go1.3] fmt: fix signs when zero padding.Andrew Gerrand
««« CL 103480043 / 777dd5a434db fmt: fix signs when zero padding. Bug was introduced recently. Add more tests, fix the bugs. Suppress + sign when not required in zero padding. Do not zero pad infinities. All old tests still pass. This time for sure! Fixes #8217. LGTM=rsc R=golang-codereviews, dan.kortschak, rsc CC=golang-codereviews https://golang.org/cl/103480043 »»» LGTM=r, rsc R=r, rsc CC=golang-codereviews https://golang.org/cl/110040043
2014-06-18[release-branch.go1.3] go/build: update doc.go for go1.3 build tag.Russ Cox
««« CL 102470045 / f15ad332ce13 go/build: update doc.go for go1.3 build tag. LGTM=bradfitz R=adg, rsc, bradfitz CC=golang-codereviews https://golang.org/cl/102470045 »»» LGTM=bradfitz R=bradfitz CC=golang-codereviews https://golang.org/cl/105310044
2014-06-18[release-branch.go1.3] doc: link to new downloads pageAndrew Gerrand
««« CL 102340044 / 951cc5f6d52f doc: link to new downloads page LGTM=minux R=golang-codereviews, minux CC=golang-codereviews https://golang.org/cl/102340044 »»» TBR=rsc CC=golang-codereviews https://golang.org/cl/105300045
2014-06-18[release-branch.go1.3] doc: add release note for 'godoc -analysis'Andrew Gerrand
««« CL 88560044 / d011c0dcae9c doc: add release note for 'godoc -analysis' Contains a link to /lib/godoc/analysis/help.html which is not yet live. LGTM=r R=r, adg CC=golang-codereviews https://golang.org/cl/88560044 »»» TBR=rsc R=golang-codereviews CC=golang-codereviews https://golang.org/cl/104150043
2014-06-13go1.3rc2go1.3rc2Andrew Gerrand
LGTM=minux, rsc R=golang-codereviews, minux, rsc CC=golang-codereviews https://golang.org/cl/105170044
2014-06-12[release-branch.go1.3] runtime: revise CL 105140044 (defer nil) to work on ↵Russ Cox
Windows ««« CL 105120044 / 824ea5943ba8 runtime: revise CL 105140044 (defer nil) to work on Windows It appears that something about Go on Windows cannot handle the fault cause by a jump to address 0. The way Go represents and calls functions, this never happened at all, until CL 105140044. This CL changes the code added in CL 105140044 to make jump to 0 impossible once again. Fixes #8047. (again, on Windows) TBR=bradfitz R=golang-codereviews, dave CC=adg, golang-codereviews, iant, r https://golang.org/cl/105120044 »»» LGTM=bradfitz R=golang-codereviews, bradfitz, alex.brainman CC=adg, golang-codereviews https://golang.org/cl/108890045
2014-06-13revert go1.3rc2Andrew Gerrand
The Windows build is still bad. The previous CL is not go1.3rc2. TBR=bradfitz R=golang-codereviews CC=golang-codereviews https://golang.org/cl/107050043
2014-06-13go1.3rc2Andrew Gerrand
LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/103420043
2014-06-12[release-branch.go1.3] runtime: do not trace past jmpdefer during pprof ↵Russ Cox
traceback on arm ««« CL 107970043 / b336da131a84 runtime: do not trace past jmpdefer during pprof traceback on arm jmpdefer modifies PC, SP, and LR, and not atomically, so walking past jmpdefer will often end up in a state where the three are not a consistent execution snapshot. This was causing warning messages a few frames later when the traceback realized it was confused, but given the right memory it could easily crash instead. Update #8153 LGTM=minux, iant R=golang-codereviews, minux, iant CC=golang-codereviews, r https://golang.org/cl/107970043 »»» LGTM=r R=golang-codereviews, r CC=adg, golang-codereviews, iant https://golang.org/cl/101260043
2014-06-12[release-branch.go1.3] runtime: fix defer of nil funcRuss Cox
««« CL 105140044 / c2832405e9b9 runtime: fix defer of nil func Fixes #8047. LGTM=r, iant R=golang-codereviews, r, iant CC=dvyukov, golang-codereviews, khr https://golang.org/cl/105140044 »»» LGTM=r R=golang-codereviews, r CC=adg, golang-codereviews, iant https://golang.org/cl/103370044
2014-06-12[release-branch.go1.3] doc: link to release history from /doc/Russ Cox
««« CL 107950043 / 593f58ee96da doc: link to release history from /doc/ Fixes #8168. TBR=bradfitz R=golang-codereviews CC=golang-codereviews https://golang.org/cl/107950043 »»» LGTM=r R=golang-codereviews, r CC=adg, golang-codereviews, iant https://golang.org/cl/105910043
2014-06-11[release-branch.go1.3] runtime: add test for issue 8047.Russ Cox
««« CL 108840043 / 3a2306461574 runtime: add test for issue 8047. Make sure stack copier doesn't barf on a nil defer. Bug was fixed in https://golang.org/cl/101800043 This change just adds a test. Fixes #8047 LGTM=dvyukov, rsc R=dvyukov, rsc CC=golang-codereviews https://golang.org/cl/108840043 »»» TBR=adg CC=golang-codereviews https://golang.org/cl/102320043
2014-06-11[release-branch.go1.3] net/http: fix double Content-Length in responseRuss Cox
««« CL 105040043 / ef8878dbed3b net/http: fix double Content-Length in response Fixes #8180 LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/105040043 »»» TBR=bradfitz R=golang-codereviews CC=bradfitz, golang-codereviews, iant https://golang.org/cl/102300046
2014-06-11[release-branch.go1.3] doc/install.html: fix erroneous HTML annotationRuss Cox
««« CL 106910044 / ac907318915d doc/install.html: fix erroneous HTML annotation align=middle is invalid; use align=center LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/106910044 »»» LGTM=r R=golang-codereviews, r CC=bradfitz, golang-codereviews, iant https://golang.org/cl/108860047
2014-06-11[release-branch.go1.3] cmd/gc: two escape analysis fixesRuss Cox
««« CL 108860043 / f153208c0a0e cmd/gc: fix escape analysis for &x inside switch x := v.(type) The analysis for &x was using the loop depth on x set during x's declaration. A type switch creates a list of implicit declarations that were not getting initialized with loop depths. Fixes #8176. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/108860043 »»» ««« CL 108870044 / 331dbd4a6334 cmd/gc: fix &result escaping into result There is a hierarchy of location defined by loop depth: -1 = the heap 0 = function results 1 = local variables (and parameters) 2 = local variable declared inside a loop 3 = local variable declared inside a loop inside a loop etc In general if an address from loopdepth n is assigned to something in loop depth m < n, that indicates an extended lifetime of some form that requires a heap allocation. Function results can be local variables too, though, and so they don't actually fit into the hierarchy very well. Treat the address of a function result as level 1 so that if it is written back into a result, the address is treated as escaping. Fixes issue 8185 . LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/108870044 »»» LGTM=r R=golang-codereviews, r CC=bradfitz, golang-codereviews, iant https://golang.org/cl/107930044
2014-06-11[release-branch.go1.3] cmd/ld: fix PC deltas in DWARF line number tableRuss Cox
««« CL 104950045 / 87daa424d96a cmd/ld: fix PC deltas in DWARF line number table The putpclcdelta function set the DWARF line number PC to s->value + pcline->pc, which is correct, but the code then set the local variable pc to epc, which can be a different value. This caused the next delta in the DWARF table to be wrong. Fixes #8098. LGTM=rsc R=rsc CC=golang-codereviews https://golang.org/cl/104950045 »»» LGTM=r R=golang-codereviews, r CC=bradfitz, golang-codereviews, iant https://golang.org/cl/107900045
2014-06-11[release-branch.go1.3] nacltest.bash, misc/nacl/README: update NaCl docs.Russ Cox
««« CL 105030043 / 6146799f32ed nacltest.bash, misc/nacl/README: update NaCl docs. LGTM=rsc R=dave, rsc CC=golang-codereviews https://golang.org/cl/105030043 »»» LGTM=r R=golang-codereviews, r CC=bradfitz, golang-codereviews, iant https://golang.org/cl/105020044
2014-06-11[release-branch.go1.3] docs: link to the assembler document from the ↵Russ Cox
Documents tab ««« CL 108840045 / 087e446f2c41 docs: link to the assembler document from the Documents tab Fixes #8156. LGTM=bradfitz R=golang-codereviews, bradfitz CC=golang-codereviews https://golang.org/cl/108840045 »»» LGTM=r R=golang-codereviews, r CC=bradfitz, golang-codereviews, iant https://golang.org/cl/101170045
2014-06-06[release-branch.go1.3] runtime: fix panic stack during runtime.Goexit during ↵Russ Cox
panic ««« CL 102220043 / 00224712f89e runtime: fix panic stack during runtime.Goexit during panic A runtime.Goexit during a panic-invoked deferred call left the panic stack intact even though all the stack frames are gone when the goroutine is torn down. The next goroutine to reuse that struct will have a bogus panic stack and can cause the traceback routines to walk into garbage. Most likely to happen during tests, because t.Fatal might be called during a deferred func and uses runtime.Goexit. This "not enough cleared in Goexit" failure mode has happened to us multiple times now. Clear all the pointers that don't make sense to keep, not just gp->panic. Fixes #8158. LGTM=iant, dvyukov R=iant, dvyukov CC=golang-codereviews https://golang.org/cl/102220043 »»» LGTM=iant R=golang-codereviews, iant CC=golang-codereviews, r https://golang.org/cl/108780044
2014-06-06[release-branch.go1.3] cmd/6g: fix stack zeroing on native clientRuss Cox
««« CL 108740047 / c8e9255aed3f cmd/6g: fix stack zeroing on native client I am not sure what the rounding here was trying to do, but it was skipping the first pointer on native client. The code above the rounding already checks that xoffset is widthptr-aligned, so the rnd was a no-op everywhere but on Native Client. And on Native Client it was wrong. Perhaps it was supposed to be rounding down, not up, but zerorange handles the extra 32 bits correctly, so the rnd does not seem to be necessary at all. This wouldn't be worth doing for Go 1.3 except that it can affect code on the playground. Fixes #8155. LGTM=r, iant R=golang-codereviews, r, iant CC=dvyukov, golang-codereviews, khr https://golang.org/cl/108740047 »»» LGTM=iant R=golang-codereviews, iant CC=golang-codereviews, r https://golang.org/cl/107830044
2014-06-06[release-branch.go1.3] doc: fix happens-before rules for buffered channelsRuss Cox
««« CL 101980047 / 12c9a9ff50d8 doc: fix happens-before rules for buffered channels The current wording is reversed in 2 places. Not sure how it got 4 LGTMs (mine was there as well). Update #6242. LGTM=dan.kortschak, r, rsc R=golang-codereviews, 0xjnml, dan.kortschak, r, rsc CC=golang-codereviews https://golang.org/cl/101980047 »»» LGTM=iant R=golang-codereviews, iant CC=golang-codereviews, r https://golang.org/cl/106830047
2014-06-06[release-branch.go1.3] cmd/cgo: for typedef of untagged struct, use typedef ↵Russ Cox
name in C code ««« CL 103080043 / 5e058e21b67d cmd/cgo: for typedef of untagged struct, use typedef name in C code Fixes #8148. LGTM=cookieo9, rsc R=rsc, cookieo9 CC=golang-codereviews https://golang.org/cl/103080043 »»» LGTM=iant R=golang-codereviews, iant CC=golang-codereviews, r https://golang.org/cl/103900046
2014-06-04[release-branch.go1.3] doc/install-source.html: document that GO386 will be ↵Shenghou Ma
auto-detected when building on both 386 and amd64. ««« CL 102150046 / ccf7893cc2f0 doc/install-source.html: document that GO386 will be auto-detected when building on both 386 and amd64. Fixes #8152. LGTM=iant R=iant CC=golang-codereviews https://golang.org/cl/102150046 »»» LGTM=iant R=golang-codereviews, iant CC=golang-codereviews https://golang.org/cl/105830044