1
0
mirror of https://github.com/golang/go synced 2024-09-24 23:10:12 -06:00
The Go programming language
Go to file
Ian Lance Taylor 7c1be45f58 io: Avoid race condition in pipe.
One goroutine started up and was waiting in rw.  Then another
goroutine decided to close the pipe.  The closing goroutine
stalled calling p.io.Lock() in pipeHalf.close.  (This happened
in gccgo).  If the closing goroutine had been able to set the
ioclosed flag, it would have gone on to tell the runner that
the pipe was closed, which would then send an EINVAL to the
goroutine sleeping in rw.  Unlocking p.io before sleeping in
rw avoids the race.

R=rsc, rsc1
CC=golang-dev
https://golang.org/cl/1682048
2010-06-30 13:14:46 -07:00
doc doc/codewalk: Share Memory By Communicating 2010-06-30 16:56:30 +10:00
include Fix *l/*c -V flag segfault 2010-02-08 11:53:27 -08:00
lib godoc: canonicalize codewalk paths 2010-06-30 17:56:51 +10:00
misc godashboard: add Projects page 2010-06-23 15:27:51 +01:00
pkg more description 2009-10-15 23:08:46 -07:00
src io: Avoid race condition in pipe. 2010-06-30 13:14:46 -07:00
test gc: fix crash for nested complex division 2010-06-23 10:55:50 -04:00
.hgignore .hgignore: ignore doc/htmlgen 2010-06-09 21:39:40 -07:00
.hgtags release.2010-06-21 tag 2010-06-21 23:22:14 +01:00
AUTHORS A+C for Peter Mundy (peterGo) 2010-06-29 09:48:35 +10:00
CONTRIBUTORS Contributors: add Kirklin McDonald (a Google employee) 2010-06-30 14:42:58 +10:00
favicon.ico add a favicon plus a couple of hi-res versions of gordon 2009-10-26 10:13:07 -07:00
LICENSE Add an explicit patent grant to the Go license. 2010-01-25 15:39:32 -08:00
README add a README file, so that if someone finds a 2009-11-08 09:57:37 -08:00

This is the source code repository for the Go programming language.  

For documentation about how to install and use Go,
visit http://golang.org/ or load doc/install.html in your web browser.

After installing Go, you can view a nicely formatted
doc/install.html by running godoc --http=:6060
and then visiting http://localhost:6060/doc/install.html.

Unless otherwise noted, the Go source files are distributed
under the BSD-style license found in the LICENSE file.