aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2011-07-29weekly.2011-07-29weekly.2011-07-29Andrew Gerrand
R=rsc CC=golang-dev https://golang.org/cl/4801062
2011-07-29runtime: fix scheduling raceHector Chu
Affects programs using cgo or runtime.LockOSThread. Fixes #2100. R=rsc, dvyukov CC=golang-dev https://golang.org/cl/4810059
2011-07-29xml: Header: fix close tag and newlineKyle Lemons
R=rsc CC=golang-dev https://golang.org/cl/4830043
2011-07-29libmach: stubs for openbsdJoel Sing
Add libmach stubs for openbsd. R=rsc CC=golang-dev https://golang.org/cl/4815065
2011-07-29godoc: allow form feed in text filesRuss Cox
Now recognizes misc/emacs/go-mode-load.el as text. Fixes #2115. R=gri CC=golang-dev https://golang.org/cl/4801061
2011-07-296l: OpenBSD supportJoel Sing
Add linker support for OpenBSD ELF-64. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/4815066
2011-07-29runtime: fix data race in findfunc()Dmitriy Vyukov
The data race can lead to reads of partially initialized concurrently mutated symbol data. The change also adds a simple sanity test for Caller() and FuncForPC(). R=rsc CC=golang-dev https://golang.org/cl/4817058
2011-07-29syscall: move bsd pipe syscallJoel Sing
Not all BSDs have the same pipe() syscall implementation - move the Darwin/FreeBSD specific implementation into their respective OS syscall files. This will be needed to add OpenBSD syscall support. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/4823057
2011-07-29archive/zip: more efficient reader and bug fixAndrew Gerrand
Fixes #2090. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/4815068
2011-07-29CONTRIBUTORS: add Joel Sing (Google CLA)Russ Cox
R=golang-dev, r CC=golang-dev, jsing https://golang.org/cl/4830044
2011-07-29runtime: improve Linux mutexDmitriy Vyukov
The implementation is hybrid active/passive spin/blocking mutex. The design minimizes amount of context switches and futex calls. The idea is that all critical sections in runtime are intentially small, so pure blocking mutex behaves badly causing a lot of context switches, thread parking/unparking and kernel calls. Note that some synthetic benchmarks become somewhat slower, that's due to increased contention on other data structures, it should not affect programs that do any real work. On 2 x Intel E5620, 8 HT cores, 2.4GHz benchmark old ns/op new ns/op delta BenchmarkSelectContended 521.00 503.00 -3.45% BenchmarkSelectContended-2 661.00 320.00 -51.59% BenchmarkSelectContended-4 1139.00 629.00 -44.78% BenchmarkSelectContended-8 2870.00 878.00 -69.41% BenchmarkSelectContended-16 5276.00 818.00 -84.50% BenchmarkChanContended 112.00 103.00 -8.04% BenchmarkChanContended-2 631.00 174.00 -72.42% BenchmarkChanContended-4 682.00 272.00 -60.12% BenchmarkChanContended-8 1601.00 520.00 -67.52% BenchmarkChanContended-16 3100.00 372.00 -88.00% BenchmarkChanSync 253.00 239.00 -5.53% BenchmarkChanSync-2 5030.00 4648.00 -7.59% BenchmarkChanSync-4 4826.00 4694.00 -2.74% BenchmarkChanSync-8 4778.00 4713.00 -1.36% BenchmarkChanSync-16 5289.00 4710.00 -10.95% BenchmarkChanProdCons0 273.00 254.00 -6.96% BenchmarkChanProdCons0-2 599.00 400.00 -33.22% BenchmarkChanProdCons0-4 1168.00 659.00 -43.58% BenchmarkChanProdCons0-8 2831.00 1057.00 -62.66% BenchmarkChanProdCons0-16 4197.00 1037.00 -75.29% BenchmarkChanProdCons10 150.00 140.00 -6.67% BenchmarkChanProdCons10-2 607.00 268.00 -55.85% BenchmarkChanProdCons10-4 1137.00 404.00 -64.47% BenchmarkChanProdCons10-8 2115.00 828.00 -60.85% BenchmarkChanProdCons10-16 4283.00 855.00 -80.04% BenchmarkChanProdCons100 117.00 110.00 -5.98% BenchmarkChanProdCons100-2 558.00 218.00 -60.93% BenchmarkChanProdCons100-4 722.00 287.00 -60.25% BenchmarkChanProdCons100-8 1840.00 431.00 -76.58% BenchmarkChanProdCons100-16 3394.00 448.00 -86.80% BenchmarkChanProdConsWork0 2014.00 1996.00 -0.89% BenchmarkChanProdConsWork0-2 1207.00 1127.00 -6.63% BenchmarkChanProdConsWork0-4 1913.00 611.00 -68.06% BenchmarkChanProdConsWork0-8 3016.00 949.00 -68.53% BenchmarkChanProdConsWork0-16 4320.00 1154.00 -73.29% BenchmarkChanProdConsWork10 1906.00 1897.00 -0.47% BenchmarkChanProdConsWork10-2 1123.00 1033.00 -8.01% BenchmarkChanProdConsWork10-4 1076.00 571.00 -46.93% BenchmarkChanProdConsWork10-8 2748.00 1096.00 -60.12% BenchmarkChanProdConsWork10-16 4600.00 1105.00 -75.98% BenchmarkChanProdConsWork100 1884.00 1852.00 -1.70% BenchmarkChanProdConsWork100-2 1235.00 1146.00 -7.21% BenchmarkChanProdConsWork100-4 1217.00 619.00 -49.14% BenchmarkChanProdConsWork100-8 1534.00 509.00 -66.82% BenchmarkChanProdConsWork100-16 4126.00 918.00 -77.75% BenchmarkSyscall 34.40 33.30 -3.20% BenchmarkSyscall-2 160.00 121.00 -24.38% BenchmarkSyscall-4 131.00 136.00 +3.82% BenchmarkSyscall-8 139.00 131.00 -5.76% BenchmarkSyscall-16 161.00 168.00 +4.35% BenchmarkSyscallWork 950.00 950.00 +0.00% BenchmarkSyscallWork-2 481.00 480.00 -0.21% BenchmarkSyscallWork-4 268.00 270.00 +0.75% BenchmarkSyscallWork-8 156.00 169.00 +8.33% BenchmarkSyscallWork-16 188.00 184.00 -2.13% BenchmarkSemaSyntNonblock 36.40 35.60 -2.20% BenchmarkSemaSyntNonblock-2 81.40 45.10 -44.59% BenchmarkSemaSyntNonblock-4 126.00 108.00 -14.29% BenchmarkSemaSyntNonblock-8 112.00 112.00 +0.00% BenchmarkSemaSyntNonblock-16 110.00 112.00 +1.82% BenchmarkSemaSyntBlock 35.30 35.30 +0.00% BenchmarkSemaSyntBlock-2 118.00 124.00 +5.08% BenchmarkSemaSyntBlock-4 105.00 108.00 +2.86% BenchmarkSemaSyntBlock-8 101.00 111.00 +9.90% BenchmarkSemaSyntBlock-16 112.00 118.00 +5.36% BenchmarkSemaWorkNonblock 810.00 811.00 +0.12% BenchmarkSemaWorkNonblock-2 476.00 414.00 -13.03% BenchmarkSemaWorkNonblock-4 238.00 228.00 -4.20% BenchmarkSemaWorkNonblock-8 140.00 126.00 -10.00% BenchmarkSemaWorkNonblock-16 117.00 116.00 -0.85% BenchmarkSemaWorkBlock 810.00 811.00 +0.12% BenchmarkSemaWorkBlock-2 454.00 466.00 +2.64% BenchmarkSemaWorkBlock-4 243.00 241.00 -0.82% BenchmarkSemaWorkBlock-8 145.00 137.00 -5.52% BenchmarkSemaWorkBlock-16 132.00 123.00 -6.82% BenchmarkContendedSemaphore 123.00 102.00 -17.07% BenchmarkContendedSemaphore-2 34.80 34.90 +0.29% BenchmarkContendedSemaphore-4 34.70 34.80 +0.29% BenchmarkContendedSemaphore-8 34.70 34.70 +0.00% BenchmarkContendedSemaphore-16 34.80 34.70 -0.29% BenchmarkMutex 26.80 26.00 -2.99% BenchmarkMutex-2 108.00 45.20 -58.15% BenchmarkMutex-4 103.00 127.00 +23.30% BenchmarkMutex-8 109.00 147.00 +34.86% BenchmarkMutex-16 102.00 152.00 +49.02% BenchmarkMutexSlack 27.00 26.90 -0.37% BenchmarkMutexSlack-2 149.00 165.00 +10.74% BenchmarkMutexSlack-4 121.00 209.00 +72.73% BenchmarkMutexSlack-8 101.00 158.00 +56.44% BenchmarkMutexSlack-16 97.00 129.00 +32.99% BenchmarkMutexWork 792.00 794.00 +0.25% BenchmarkMutexWork-2 407.00 409.00 +0.49% BenchmarkMutexWork-4 220.00 209.00 -5.00% BenchmarkMutexWork-8 267.00 160.00 -40.07% BenchmarkMutexWork-16 315.00 300.00 -4.76% BenchmarkMutexWorkSlack 792.00 793.00 +0.13% BenchmarkMutexWorkSlack-2 406.00 404.00 -0.49% BenchmarkMutexWorkSlack-4 225.00 212.00 -5.78% BenchmarkMutexWorkSlack-8 268.00 136.00 -49.25% BenchmarkMutexWorkSlack-16 300.00 300.00 +0.00% BenchmarkRWMutexWrite100 27.10 27.00 -0.37% BenchmarkRWMutexWrite100-2 33.10 40.80 +23.26% BenchmarkRWMutexWrite100-4 113.00 88.10 -22.04% BenchmarkRWMutexWrite100-8 119.00 95.30 -19.92% BenchmarkRWMutexWrite100-16 148.00 109.00 -26.35% BenchmarkRWMutexWrite10 29.60 29.40 -0.68% BenchmarkRWMutexWrite10-2 111.00 61.40 -44.68% BenchmarkRWMutexWrite10-4 270.00 208.00 -22.96% BenchmarkRWMutexWrite10-8 204.00 185.00 -9.31% BenchmarkRWMutexWrite10-16 261.00 190.00 -27.20% BenchmarkRWMutexWorkWrite100 1040.00 1036.00 -0.38% BenchmarkRWMutexWorkWrite100-2 593.00 580.00 -2.19% BenchmarkRWMutexWorkWrite100-4 470.00 365.00 -22.34% BenchmarkRWMutexWorkWrite100-8 468.00 289.00 -38.25% BenchmarkRWMutexWorkWrite100-16 604.00 374.00 -38.08% BenchmarkRWMutexWorkWrite10 951.00 951.00 +0.00% BenchmarkRWMutexWorkWrite10-2 1001.00 928.00 -7.29% BenchmarkRWMutexWorkWrite10-4 1555.00 1006.00 -35.31% BenchmarkRWMutexWorkWrite10-8 2085.00 1171.00 -43.84% BenchmarkRWMutexWorkWrite10-16 2082.00 1614.00 -22.48% R=rsc, iant, msolo, fw, iant CC=golang-dev https://golang.org/cl/4711045
2011-07-28gc: fix pprof deadlockRuss Cox
Fixes #2051. R=golang-dev, dsymonds CC=golang-dev https://golang.org/cl/4834041
2011-07-28gc: more graceful errors during struct definitionRuss Cox
Fixes #2110. R=ken2 CC=golang-dev https://golang.org/cl/4823060
2011-07-28exp/template: fix buildRob Pike
TBR=gri R=gri CC=golang-dev https://golang.org/cl/4815070
2011-07-28build: fix noclobberRuss Cox
I got it backwards last time, and somehow that was leaking into the parent shell? R=golang-dev, iant CC=golang-dev https://golang.org/cl/4826054
2011-07-28exp/template: simplify the helper functionsRob Pike
- create a pair of "Must" functions, one for templates, one for sets - regularize the return values of the parsers so they can be wrapped by Must - delete all the old Must functions and methods. R=golang-dev, gri, r CC=golang-dev https://golang.org/cl/4826052
2011-07-285g, 6g, 8g: shift, opt fixesRuss Cox
Fixes #1808. R=ken2 CC=golang-dev https://golang.org/cl/4813052
2011-07-285g: defer vs optimizer bugRuss Cox
Fixes #1924. R=ken2 CC=golang-dev https://golang.org/cl/4802063
2011-07-28http: make serveFile redirects relative to work with StripPrefixAndrew Balholm
serveFile was using absolute redirects, which didn't work under StripPrefix. Now it uses relative redirects. R=golang-dev, rsc, bradfitz CC=golang-dev, kevlar https://golang.org/cl/4789042
2011-07-286g, 8g: divide corner caseRuss Cox
Fixes #1772. R=ken2 CC=golang-dev https://golang.org/cl/4798062
2011-07-28build: handle spaces in $USERRuss Cox
Fixes #2107. R=golang-dev, r CC=golang-dev https://golang.org/cl/4830042
2011-07-28build: update all-qemu.bashRuss Cox
nothing but GOARCH=arm makes sense. http/cgi uses network too. R=golang-dev, r CC=golang-dev https://golang.org/cl/4800053
2011-07-28gc: shift type bugRuss Cox
Fixes #1664. R=ken2 CC=golang-dev https://golang.org/cl/4798056
2011-07-28exp/template: make Set.ParseFile etc resolve functions in the SetRoger Peppe
Fixes #2114 R=r CC=golang-dev https://golang.org/cl/4823056
2011-07-28cgo: add GoBytes, fix gmp exampleRuss Cox
Fixes #1640. Fixes #2007. R=golang-dev, adg CC=golang-dev https://golang.org/cl/4815063
2011-07-28gc: another width testRuss Cox
R=ken2 CC=golang-dev https://golang.org/cl/4808057
2011-07-28gc: line number + type checking nitsRuss Cox
Fixes #1910. Fixes #1979. Fixes #1990. Fixes #1993. Fixes #2089. R=ken2 CC=golang-dev https://golang.org/cl/4828046
2011-07-28exp/template: make Set.MustParse* methods return the set.Roger Peppe
This brings them into line with the Template.MustParse* methods and makes it possible to use them in global variable initializations. R=r CC=golang-dev https://golang.org/cl/4798059
2011-07-28ld: remove cseekend and redo pe writingAlex Brainman
Simplify code and add more checks. Fixes #2105. R=rsc CC=golang-dev https://golang.org/cl/4794060
2011-07-27rpc and exp/template: simplify tests for exported itemsRob Pike
Fix code to count mallocs - needed to call UpdateMemStats. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/4823055
2011-07-28image/tiff: Do not panic when RowsPerStrip is missing.Benny Siegert
The RowsPerStrip tag is mandatory according to the spec. However, Mac OS sometimes (?) omits it. I managed to create such an image by applying "tiffutil -none" on a compressed image. If RowsPerStrip is 0, there was a division by zero in the decoder. Assume that the image is a single strip in this case. R=nigeltao, bradfitz CC=golang-dev https://golang.org/cl/4815061
2011-07-27gc: top-level closure bugRuss Cox
Fixes #2055. R=ken2 CC=golang-dev https://golang.org/cl/4816059
2011-07-27gc: composite literal double eval bugRuss Cox
Fixes #2086. R=ken2 CC=golang-dev https://golang.org/cl/4803055
2011-07-27unicode: fix case-mapping for roman numerals!!Rob Pike
Hurray! Also fix the mystical U+0345 COMBINING GREEK YPOGEGRAMMENI, so everyone is satisfied. Also add a -local flag to use local files for faster turnaround when debugging. R=rsc CC=golang-dev https://golang.org/cl/4825054
2011-07-27container/vector: removed some uses of container/vector in other pkgsJohn Asmuth
R=gri CC=golang-dev https://golang.org/cl/4823054
2011-07-27A+C: John AsmuthAndrew Gerrand
R=golang-dev, gri CC=golang-dev https://golang.org/cl/4827045
2011-07-27godoc: app engine configuration and updated documentationRobert Griesemer
Also: Fixed an error message in zip.go. R=r, dsymonds CC=golang-dev https://golang.org/cl/4816053
2011-07-27gc: use more Go-like names for methodsRuss Cox
Fixes #991. R=ken2 CC=golang-dev https://golang.org/cl/4819049
2011-07-27gc: diagnose (x) := 0Russ Cox
Fixes #1756. R=ken2 CC=golang-dev https://golang.org/cl/4810057
2011-07-27build: fix for noclobber usersRuss Cox
Fixes #2020. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/4814056
2011-07-27gc: zero-width struct, zero-length array fixesRuss Cox
Fixes #1774. Fixes #2095. Fixes #2097. R=ken2 CC=golang-dev https://golang.org/cl/4826046
2011-07-27gc: iota outside constRuss Cox
Fixes #1662. R=ken2 CC=golang-dev https://golang.org/cl/4828045
2011-07-27gc: echo literal in error messageRuss Cox
Fixes #1192. R=ken2 CC=golang-dev https://golang.org/cl/4794062
2011-07-27runtime: higher goroutine arg limit, clearer errorRuss Cox
Fixes #591. R=ken2 CC=golang-dev https://golang.org/cl/4803054
2011-07-27reflect: rename new TestVariadic to TestVariadicType.David Symonds
R=nigeltao CC=golang-dev https://golang.org/cl/4825050
2011-07-27reflect: doc fixes for obsolete types.David Symonds
R=golang-dev, rsc CC=golang-dev https://golang.org/cl/4802061
2011-07-26goinstall: generate makefiles using exp/templateRob Pike
R=golang-dev, adg CC=golang-dev https://golang.org/cl/4809052
2011-07-26rpc: convert /debug/rpc handler to exp/templateRob Pike
R=golang-dev, adg CC=golang-dev https://golang.org/cl/4819048
2011-07-26http: set content type for fileserver directory listingsRobert Griesemer
R=bradfitz, rsc CC=golang-dev https://golang.org/cl/4815062
2011-07-26gc, runtime: fix range+panic line number bugsRuss Cox
Fixes #1856. R=ken2 CC=golang-dev https://golang.org/cl/4810054