An error occurred fetching the project authors.
- 20 May, 2013 1 commit
-
-
Mikio Hara authored
Update #5199 R=golang-dev, dvyukov CC=golang-dev https://golang.org/cl/8825043
-
- 18 Mar, 2013 1 commit
-
-
Joel Sing authored
The current SysAlloc implementation suffers from a signed vs unsigned comparision bug. Since the error code from mmap is negated, the unsigned comparision of v < 4096 is always false on error. Fix this by switching to the darwin/freebsd/linux mmap model and leave the mmap return value unmodified. R=golang-dev, r CC=golang-dev https://golang.org/cl/7870044
-
- 15 Mar, 2013 2 commits
-
-
Russ Cox authored
This provides a way to generate core dumps when people need them. The settings are: GOTRACEBACK=0 no traceback on panic, just exit GOTRACEBACK=1 default - traceback on panic, then exit GOTRACEBACK=2 traceback including runtime frames on panic, then exit GOTRACEBACK=crash traceback including runtime frames on panic, then crash Fixes #3257. R=golang-dev, devon.odell, r, daniel.morsing, ality CC=golang-dev https://golang.org/cl/7666044
-
Russ Cox authored
NEGL does a negation of the bottom 32 bits and then zero-extends to 64 bits, resulting in a negative 32-bit number but a positive 64-bit number. NEGQ does a full 64-bit negation, so that the result is negative both as a 32-bit and as a 64-bit number. This doesn't matter for the functions that are declared to return int32. It only matters for the ones that return int64 or void* [sic]. This will fix the current incorrect error in the OpenBSD/amd64 build. The build will still be broken, but it won't report a bogus error. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/7536046
-
- 12 Mar, 2013 1 commit
-
-
Keith Randall authored
Uses AES hardware instructions on 386/amd64 to implement a fast hash function. Incorporates a random key to thwart hash collision DOS attacks. Depends on CL#7548043 for new assembly instructions. Update #3885 Helps some by making hashing faster. Go time drops from 0.65s to 0.51s. R=rsc, r, bradfitz, remyoudompheng, khr, dsymonds, minux.ma, elias.naur CC=golang-dev https://golang.org/cl/7543043
-
- 22 Dec, 2012 1 commit
-
-
Russ Cox authored
When we release memory to the OS, if the OS doesn't want us to release it (for example, because the program executed mlockall(MCL_FUTURE)), madvise will fail. Ignore the failure instead of crashing. Fixes #3435. R=ken2 CC=golang-dev https://golang.org/cl/6998052
-
- 18 Dec, 2012 2 commits
-
-
Jingcheng Zhang authored
runtime: use "mp" and "gp" instead of "m" and "g" for local variable name to avoid confusion with the global "m" and "g". R=golang-dev, minux.ma, rsc CC=bradfitz, golang-dev https://golang.org/cl/6939064
-
Shenghou Ma authored
For Linux/{386,arm}, FreeBSD/{386,amd64,arm}, NetBSD/{386,amd64}, OpenBSD/{386,amd64}. Note: our Darwin implementation already has ns resolution. Linux/386 (Core i7-2600 @ 3.40GHz, kernel 3.5.2-gentoo) benchmark old ns/op new ns/op delta BenchmarkNow 110 118 +7.27% Linux/ARM (ARM Cortex-A8 @ 800MHz, kernel 2.6.32.28 android) benchmark old ns/op new ns/op delta BenchmarkNow 625 542 -13.28% Linux/ARM (ARM Cortex-A9 @ 1GHz, Pandaboard) benchmark old ns/op new ns/op delta BenchmarkNow 992 909 -8.37% FreeBSD 9-REL-p1/amd64 (Dell R610 Server with Xeon X5650 @ 2.67GHz) benchmark old ns/op new ns/op delta BenchmarkNow 699 695 -0.57% FreeBSD 9-REL-p1/amd64 (Atom D525 @ 1.80GHz) benchmark old ns/op new ns/op delta BenchmarkNow 1553 1658 +6.76% OpenBSD/amd64 (Dell E6410 with i5 CPU M 540 @ 2.53GHz) benchmark old ns/op new ns/op delta BenchmarkNow 1262 1236 -2.06% OpenBSD/i386 (Asus eeePC 701 with Intel Celeron M 900MHz - locked to 631MHz) benchmark old ns/op new ns/op delta BenchmarkNow 5089 5043 -0.90% NetBSD/i386 (VMware VM with Core i5 CPU @ 2.7GHz) benchmark old ns/op new ns/op delta BenchmarkNow 277 278 +0.36% NetBSD/amd64 (VMware VM with Core i5 CPU @ 2.7Ghz) benchmark old ns/op new ns/op delta BenchmarkNow 103 105 +1.94% Thanks Maxim Khitrov, Joel Sing, and Dave Cheney for providing benchmark data. R=jsing, dave, rsc CC=golang-dev https://golang.org/cl/6820120
-
- 26 Nov, 2012 1 commit
-
-
Joel Sing authored
R=golang-dev, minux.ma CC=golang-dev https://golang.org/cl/6854079
-
- 21 Nov, 2012 1 commit
-
-
Joel Sing authored
Update OpenBSD runtime to use the new version of the sys___tfork syscall and switch TLS initialisation from sys_arch to sys___set_tcb (note that both of these syscalls are available in OpenBSD 5.2). R=golang-dev, minux.ma CC=golang-dev https://golang.org/cl/6843058
-
- 04 Sep, 2012 1 commit
-
-
Alan Donovan authored
Signal handlers are global resources but many language environments (Go, C++ at Google, etc) assume they have sole ownership of a particular handler. Signal handlers in mixed-language applications must therefore be robust against unexpected delivery of certain signals, such as SIGPROF. The default Go signal handler runtime·sigtramp assumes that it will never be called on a non-Go thread, but this assumption is violated by when linking in C++ code that spawns threads. Specifically, the handler asserts the thread has an associated "m" (Go scheduler). This CL is a very simple workaround: discard SIGPROF delivered to non-Go threads. runtime.badsignal(int32) now receives the signal number; if it returns without panicking (e.g. sig==SIGPROF) the signal is discarded. I don't think there is any really satisfactory solution to the problem of signal-based profiling in a mixed-language application. It's not only the issue of handler clobbering, but also that a C++ SIGPROF handler called in a Go thread can't unwind the Go stack (and vice versa). The best we can hope for is not crashing. Note: - I've ported this to all POSIX platforms, except ARM-linux which already ignores unexpected signals on m-less threads. - I've avoided tail-calling runtime.badsignal because AFAICT the 6a/6l don't support it. - I've avoided hoisting 'push sig' (common to both function calls) because it makes the code harder to read. - Fixed an (apparently incorrect?) docstring. R=iant, rsc, minux.ma CC=golang-dev https://golang.org/cl/6498057
-
- 25 Apr, 2012 1 commit
-
-
Joel Sing authored
Switch from using the rfork() syscall on OpenBSD, to the __tfork() syscall. The __tfork() syscall is the preferred way of creating system threads and the rfork() syscall has recently been removed. Note: this will break compatibility with OpenBSD releases prior to 5.1. R=golang-dev, bradfitz, devon.odell, rsc CC=golang-dev https://golang.org/cl/6037048
-
- 11 Apr, 2012 1 commit
-
-
Joel Sing authored
Update the threxit and thrsleep syscalls to match the ABI of the OpenBSD 5.1 kernel. These changes are backwards compatible with older kernels. Fixes #3311. R=golang-dev, rsc, devon.odell CC=golang-dev https://golang.org/cl/5777079
-
- 10 Apr, 2012 1 commit
-
-
Joel Sing authored
Block signals during thread creation, otherwise the new thread can receive a signal prior to initialisation completing. Fixes #3102. R=golang-dev, rsc, devon.odell, minux.ma CC=golang-dev https://golang.org/cl/5757064
-
- 12 Mar, 2012 1 commit
-
-
Russ Cox authored
It's the best we can do before Go 1. For issue 3250; not a fix but at least less mysterious. R=golang-dev, bradfitz CC=golang-dev https://golang.org/cl/5797068
-
- 08 Mar, 2012 1 commit
-
-
Russ Cox authored
When a very low-level system call that should never fail does fail, we call notok, which crashes the program. Often, we are then left with only the program counter as information about the crash, and it is in notok. Instead, inline calls to notok (it is just one instruction on most systems) so that the program counter will tell us which system call is unhappy. R=golang-dev, gri, minux.ma, bradfitz CC=golang-dev https://golang.org/cl/5792048
-
- 19 Dec, 2011 1 commit
-
-
Russ Cox authored
This is like the ill-fated CL 5493063 except that I have written a shell script (autogen.sh) instead of thinking I could possibly write a correct Makefile. R=golang-dev, r CC=golang-dev https://golang.org/cl/5496075
-
- 16 Dec, 2011 3 commits
-
-
Russ Cox authored
That was the last build that was close to working. I will try that change again next week. Make is being very subtle today. At the reverted-to CL, the ARM traceback appears to be broken. I'll look into that next week too. R=golang-dev, r CC=golang-dev https://golang.org/cl/5492063
-
Russ Cox authored
R=golang-dev, r, r CC=golang-dev https://golang.org/cl/5493063
-
Russ Cox authored
Collapse the arch,os-specific directories into the main directory by renaming xxx/foo.c to foo_xxx.c, and so on. There are no substantial edits here, except to the Makefile. The assumption is that the Go tool will #define GOOS_darwin and GOARCH_amd64 and will make any file named something like signals_darwin.h available as signals_GOOS.h during the build. This replaces what used to be done with -I$(GOOS). There is still work to be done to make runtime build with standard tools, but this is a big step. After this we will have to write a script to generate all the generated files so they can be checked in (instead of generated during the build). R=r, iant, r, lucio.dere CC=golang-dev https://golang.org/cl/5490053
-
- 30 Nov, 2011 1 commit
-
-
Russ Cox authored
R=r, bradfitz, gri, dsymonds, iant CC=golang-dev https://golang.org/cl/5392041
-
- 04 Nov, 2011 1 commit
-
-
Russ Cox authored
TBR=r CC=golang-dev https://golang.org/cl/5353041
-
- 03 Nov, 2011 1 commit
-
-
Russ Cox authored
runtime knows how to get the time of day without allocating memory. R=golang-dev, dsymonds, dave, hectorchu, r, cw CC=golang-dev https://golang.org/cl/5297078
-
- 08 Oct, 2011 1 commit
-
-
Joel Sing authored
Implement a locking model based on the current linux model - a tri-state mutex with active spinning, passive spinning and sleeping. R=golang-dev, dvyukov, rsc CC=golang-dev https://golang.org/cl/4974043
-
- 05 Oct, 2011 1 commit
-
-
Joel Sing authored
Set the runtime ncpu based on the hw.ncpu sysctl. R=golang-dev, rsc CC=golang-dev https://golang.org/cl/5191043
-
- 01 Oct, 2011 1 commit
-
-
Joel Sing authored
R=golang-dev, mikioh.mikioh, hectorchu CC=golang-dev https://golang.org/cl/5173043
-
- 29 Aug, 2011 1 commit
-
-
Joel Sing authored
- Rename sys_sched_yield() to osyield() as this is now defined in asm.h. - Only print kern.rtheads message if rfork_thread() failed with ENOTSUP. - Remove unused variables. R=rsc CC=golang-dev https://golang.org/cl/4973043
-
- 08 Aug, 2011 1 commit
-
-
Joel Sing authored
Add support for the go runtime on openbsd/amd64. This is based on the existing freebsd runtime. Threads are implemented using OpenBSD's rthreads, which are currently disabled by default, however can be enabled via the kern.rthreads sysctl. For now, cgo is disabled. R=rsc CC=golang-dev https://golang.org/cl/4815067
-