- 31 Dec, 2019 1 commit
-
-
Tobias Klauser authored
Use the libc fcntl (via syscall.fcntl) on aix and solaris like it is already done for darwin. For the syscall-based fcntl implementation use FcntlSyscall from internal/syscall/unix in order to get fcntl64 on 32-bit Linux systems. On aix, fcntl with F_DUPFD_CLOEXEC is not supported. Thus, defined F_DUPFD_CLOEXEC = 0 in the syscall package and check its value before calling fcntl(fd, syscall.F_DUPFD_CLOEXEC, 0). On js/wasm, fcntl is not supported thus let its implementation return ENOSYS directly. Updates #36211 Change-Id: I96a2ea79e5c4eed2fefd94d0aefd72c940825682 Reviewed-on: https://go-review.googlesource.com/c/go/+/212278 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 30 Dec, 2019 3 commits
-
-
Tobias Klauser authored
On aix and solaris (like on darwin) use libc fcntl to implement IsNonblock instead of Syscall(SYS_FCNTL, ...) which isn't supported. Change-Id: I989b02aa0c90b7e2dae025572867dda277fef8be Reviewed-on: https://go-review.googlesource.com/c/go/+/212600 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Josh Bleecher Snyder authored
Change-Id: I25fbd63f10ea9892589ad44cc45761926aff0648 Reviewed-on: https://go-review.googlesource.com/c/go/+/212841Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Tobias Klauser authored
Use fcntl64Syscall in forkAndExecInChild1 to get fcntl64 on 32-bit Linux systems. Updates #36211 Change-Id: Id0e34359256beace970e72102fdace7a987ff2b0 Reviewed-on: https://go-review.googlesource.com/c/go/+/212598 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 27 Dec, 2019 3 commits
-
-
Michael Anthony Knyszek authored
This change makes it so that we check whether scavAddr is actually mapped before trying to look at the summary for the fast path, since we may segfault if that that part of the summary is not mapped in. Previously this wasn't a problem because we would conservatively map all memory for the summaries between the lowest mapped heap address and the highest one. This change also adds a test for this case. Change-Id: I2b1d89b5e044dce81745964dfaba829f4becdc57 Reviewed-on: https://go-review.googlesource.com/c/go/+/212637 Run-TryBot: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Ian Lance Taylor authored
Fixes #36245 Change-Id: I10ce50b0cc28b15f4e7be85b8f12cf9d0e4fac96 Reviewed-on: https://go-review.googlesource.com/c/go/+/212404 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Emmanuel Odeke <emm.odeke@gmail.com>
-
Ian Lance Taylor authored
Updates #36281 Change-Id: I3c4487caaf47566212dc62322b2e884e695ea7f1 Reviewed-on: https://go-review.googlesource.com/c/go/+/212657Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 26 Dec, 2019 2 commits
-
-
Michael Anthony Knyszek authored
This change disables pageAlloc tests on OpenBSD in short mode because pageAlloc holds relatively large virtual memory reservations and we make two during the pageAlloc tests. The runtime may also be carrying one such reservation making the virtual memory requirement for testing the Go runtime three times as much as just running a Go binary. This causes problems for folks who just want to build and test Go (all.bash) on OpenBSD but either don't have machines with at least 4ish GiB of RAM (per-process virtual memory limits are capped at some constant factor times the amount of physical memory) or their per-process virtual memory limits are low for other reasons. Fixes #36210. Change-Id: I8d89cfde448d4cd2fefff4ad6ffed90de63dd527 Reviewed-on: https://go-review.googlesource.com/c/go/+/212177 Run-TryBot: Michael Knyszek <mknyszek@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
-
Tobias Klauser authored
Use FcntlSyscall from internal/syscall/unix to get fcntl64 on 32-bit Linux systems. Updates #36211 Change-Id: If48a6e09606ca9f7f6e22f3e8dc9a25fb3ccaf65 Reviewed-on: https://go-review.googlesource.com/c/go/+/212537 Run-TryBot: Tobias Klauser <tobias.klauser@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
- 24 Dec, 2019 5 commits
-
-
Ariel Mashraki authored
Package name and documentation link were wrong. Change-Id: I274906afc3cf7a3d88e3da76549cd6ab008fd0c7 Reviewed-on: https://go-review.googlesource.com/c/go/+/212538Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Isfan Azhabil authored
Fix a typo DNS name, it should be [onion.vegetables.com](http://onion.vegetables.com/) Change-Id: I4122a2305b8f5e774a834651e70c75b54e9386bd GitHub-Last-Rev: 9907897944275c5f8c54c79667cbb1ef474539de GitHub-Pull-Request: golang/go#36270 Reviewed-on: https://go-review.googlesource.com/c/go/+/212410Reviewed-by: Ian Lance Taylor <iant@golang.org>
-
Joel Sing authored
Updates #27532 Change-Id: Ib3e44ec524ed20bbfbbaf40df22cec335460f3ef Reviewed-on: https://go-review.googlesource.com/c/go/+/204629 Run-TryBot: Joel Sing <joel@sing.id.au> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Joel Sing authored
Based on riscv-go port. Updates #27532 Change-Id: I5e7f45955e1dfdb9d09cc6a4e6f3ce81216d411d Reviewed-on: https://go-review.googlesource.com/c/go/+/204628Reviewed-by: Cherry Zhang <cherryyz@google.com>
-
Joel Sing authored
Also provide REG_LR to more clearly define the link register. Based on the riscv-go port. Updates #27532 Change-Id: I0805f373682f93b3918a01c21d4ef34eb3817c75 Reviewed-on: https://go-review.googlesource.com/c/go/+/204627Reviewed-by: Cherry Zhang <cherryyz@google.com> Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 23 Dec, 2019 2 commits
-
-
Ian Lance Taylor authored
Patch up runtime testing to use the libc fcntl function on Darwin, which is what we should be doing anyhow. This is similar to how we handle fcntl on AIX and Solaris. Fixes #36211 Change-Id: I47ad87e11df043ce21496a0d59523dad28960f76 Reviewed-on: https://go-review.googlesource.com/c/go/+/212299 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Tobias Klauser <tobias.klauser@gmail.com>
-
Alberto Donizetti authored
The doc for testing.T and testing.B said that both test and benchmark logs are printed to stderr, but in reality that wasn't the case. CL 24311 fixed the doc for T, this change fixes it for B. Fixes #36257 Change-Id: I0ff77ff44608f60320a1565b371c81e96039e71c Reviewed-on: https://go-review.googlesource.com/c/go/+/212457Reviewed-by: Gabriel Aszalos <gabriel.aszalos@gmail.com> Reviewed-by: Ian Lance Taylor <iant@golang.org> Run-TryBot: Gabriel Aszalos <gabriel.aszalos@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 20 Dec, 2019 6 commits
-
-
Austin Clements authored
This is based on reading through every commit message to runtime and cmd/{compile,link,internal,asm} since Go 1.13. Change-Id: I253b1a70ed265f15180fa20c191ceeafa6612ac4 Reviewed-on: https://go-review.googlesource.com/c/go/+/211977Reviewed-by: Matthew Dempsky <mdempsky@google.com>
-
Ian Lance Taylor authored
The test for issue 8945 was marked to only run on gccgo, but there was no reason for that. It broke for gccgo using GCC 10, because GCC 10 defaults to -fno-common. Make the test run on gc, and split it into test.go and testx.go to make it work with GCC 10. The test for issue 9026 used two identical structs which GCC 10 turns into the same type. The point of the test is not that the structs are identical, but that they are handled in a particular order. So make them different. Updates #8945 Updates #9026 Change-Id: I000fb02f88f346cfbbe5dbefedd944a2c64e8d8e Reviewed-on: https://go-review.googlesource.com/c/go/+/211217 Run-TryBot: Ian Lance Taylor <iant@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Than McIntosh <thanm@google.com>
-
Dan Scales authored
nanotime1 and walltime1 do not preserve BP on linux amd64. Previously, this did not cause a problem, because nanotime/walltime do preserve the BP. But now with mid-stack inlining, nanotime/walltime are usually inlined, so BP is not preserved. So, the BP is now wrong in any function after a call to nanotime()/walltime() on amd64. That means the frame pointer on the stack can be wrong for any further function call made after the nanotime() call (notably runtime.main and various GC functions). [386 doesn't use framepointer.] Fix is to set a frame size of 8 for nanotime1 and walltime1, which means the standard prolog/epilog that saves/restore BP in the stack frame is added. I noticed this while investigating issue 16638 (use frame pointers for runtime.Callers). This change would needed for progress on that issue (which doesn't have a high priority). Verified that this fix works/is useful for issue 16638. Change-Id: I19e19ef2c1a517d737a34928baae034f2eb0b2c2 Reviewed-on: https://go-review.googlesource.com/c/go/+/212079 Run-TryBot: Dan Scales <danscales@google.com> Reviewed-by: Keith Randall <khr@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Bryan C. Mills authored
The documentation for RecentTag indicates that it returns an actual tag, not a canonicalized prefix+version blob equivalent to a tag, so the canonicalization due to semver.Max seems like a bug here. Fortunately, RecentTag is not currently ever actually used as a tag, so the removal of metadata does not result in a user-facing bug. Nonetheless, it may be a subtle source of confusion for maintainers in the future. Updates #32700 Change-Id: I525423c1c0c7ec7c36c09e53b180034474f74e5a Reviewed-on: https://go-review.googlesource.com/c/go/+/212202 Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Bryan C. Mills authored
I noticed the missing diagnostic when writing a regression test for #33795. Change-Id: Ic3249436a6109d71f9ff720b7096f9b872f6a94b Reviewed-on: https://go-review.googlesource.com/c/go/+/212201 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Bryan C. Mills authored
Updates #32700 Fixes #33795 Change-Id: I16897a0a2f3aa2f0b0bf8cf8252f3f39eef2e7ba Reviewed-on: https://go-review.googlesource.com/c/go/+/212200 Run-TryBot: Bryan C. Mills <bcmills@google.com> Reviewed-by: Jay Conrod <jayconrod@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
- 19 Dec, 2019 5 commits
-
-
Bryan C. Mills authored
The 'go' command normally requires the 'go.mod' files for replacement modules to have a major version compatible with the module they are replacing. However, prior to CL 206761, the 'go' command erroneously allowed unversioned paths (which imply major version 0 or 1) to replace 'gopkg.in' paths with any major-version suffix. An analysis of proxy.golang.org suggests that these replacements, while uncommon, are not unheard-of. Rather than breaking the modules that rely on them, we will continue to allow the erroneous replacement paths for this particular pairing. Updates #34254 Change-Id: Icb4e745981803edaa96060f17a8720a058219ab1 Reviewed-on: https://go-review.googlesource.com/c/go/+/212105 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Jay Conrod authored
When the -modfile flag is in use (either explicitly or from GOFLAGS), 'go list -m' will now print the effective go.mod file for the main module in the GoMod field in -f or -json output. Fixes #36220 Updates #34506 Change-Id: I89c2ee40f20e07854bb37c6e4e13eeea0cce7b0d Reviewed-on: https://go-review.googlesource.com/c/go/+/212100 Run-TryBot: Jay Conrod <jayconrod@google.com> Reviewed-by: Bryan C. Mills <bcmills@google.com>
-
Bryan C. Mills authored
Fixes #29100 Change-Id: I195191aad825266ab55d38addef9d662cfc72dff Reviewed-on: https://go-review.googlesource.com/c/go/+/212099 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Daniel Martí authored
The recently added slice function used indirectInterface, but then forgot to actually call reflect.Value.Slice on its result. Calling the Slice method on the original Value without indirectInterface would result in a panic, if our slice was indeed behind an interface. Fix that, and add test cases for all three built-in functions that work with slices. Fixes #36199. Change-Id: I9a18f4f604a3b29967eefeb573f8960000936b88 Reviewed-on: https://go-review.googlesource.com/c/go/+/211877 Run-TryBot: Daniel Martí <mvdan@mvdan.cc> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Rob Pike <r@golang.org>
-
Ian Lance Taylor authored
Fixes #36190 Fixes #36191 Change-Id: I1213ef37b6595af63dbe202a8ade65741caf1356 Reviewed-on: https://go-review.googlesource.com/c/go/+/212001Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-
- 18 Dec, 2019 3 commits
-
-
Cherry Zhang authored
We don't asynchronously preempt if we are in the runtime. We do this by checking the function name. However, it failed to take inlining into account. If a runtime function gets inlined into a non-runtime function, it can be preempted, and bad things can happen. One instance of this is dounlockOSThread inlined into UnlockOSThread which is in turn inlined into a non-runtime function. Fix this by using the innermost frame's function name. Change-Id: Ifa036ce1320700aaaefd829b4bee0d04d05c395d Reviewed-on: https://go-review.googlesource.com/c/go/+/211978 Run-TryBot: Cherry Zhang <cherryyz@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Austin Clements <austin@google.com>
-
Austin Clements authored
Change-Id: I9519659983de23f43ff0e05cffd336d8bc351400 Reviewed-on: https://go-review.googlesource.com/c/go/+/211758Reviewed-by: Matthew Dempsky <mdempsky@google.com> Reviewed-by: Alexander Rakoczy <alex@golang.org>
-
Gert Cuykens authored
Inconsistency between cmd/doc/main.go and cmd/go/internal/doc/doc.go Fixes #34976 Change-Id: I429200f9305d473edb4505216bb4840ba92af818 Reviewed-on: https://go-review.googlesource.com/c/go/+/201857 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Bryan C. Mills <bcmills@google.com>
-
- 17 Dec, 2019 5 commits
-
-
Bryan C. Mills authored
Fixes #36169 Change-Id: Ib9a53fdb0112635b53be38d6818834dd1775e70c Reviewed-on: https://go-review.googlesource.com/c/go/+/211698 Run-TryBot: Bryan C. Mills <bcmills@google.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Michael Matloob authored
This makes the check the same as the one in the tests vet check. It's safer to check the number of arguments rather than for a nil slice. Change-Id: I8e04e9c612573f334770c1c4245238649656c6e2 Reviewed-on: https://go-review.googlesource.com/c/go/+/211598 Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Bryan C. Mills authored
Fixes #36168 Change-Id: If2b7368671e83657a3a74dd030e66e7c68bf2361 Reviewed-on: https://go-review.googlesource.com/c/go/+/211657Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
Oliver Powell authored
The comment "If the name is the name of this template, overwrite this template." is incorrect and should be "is not" instead. This comment is no longer required once the docs are updated to mention this behaviour instead. Fixes #34695 Change-Id: I773495b2194d7bb7619b13c1a28cbc76e8f69aac Reviewed-on: https://go-review.googlesource.com/c/go/+/199139Reviewed-by: Rob Pike <r@golang.org>
-
Ian Lance Taylor authored
Fixes #35627 Change-Id: I0c5fed46a69a9663e46a9414468ec610063ea05a Reviewed-on: https://go-review.googlesource.com/c/go/+/207849Reviewed-by: Rob Pike <r@golang.org>
-
- 16 Dec, 2019 4 commits
-
-
Dmitri Shuralyov authored
This page has moved to the x/website repo in CL 211300 (commit golang/website@3c8b7f99cadaa000e642595d0fabcd9ac496f335). Remove the old copy in this repo since it's no longer used. Updates #29206 Change-Id: I8b3396d9e42d1e7262a8cde9577962d33b215836 Reviewed-on: https://go-review.googlesource.com/c/go/+/211301Reviewed-by: Filippo Valsorda <filippo@golang.org>
-
Alexander Rakoczy authored
Change-Id: I14b1a21a8639b3241326e74ab6152673d5d71243 Reviewed-on: https://go-review.googlesource.com/c/go/+/211517 Run-TryBot: Alexander Rakoczy <alex@golang.org> Run-TryBot: Carlos Amedee <carlos@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Carlos Amedee <carlos@golang.org> Reviewed-by: Dmitri Shuralyov <dmitshur@golang.org>
-
Jason A. Donenfeld authored
Systems where PowerRegisterSuspendResumeNotification returns ERROR_ FILE_NOT_FOUND are also systems where nanotime() is on "program time" rather than "real time". The chain for this is: powrprof.dll!PowerRegisterSuspendResumeNotification -> umpdc.dll!PdcPortOpen -> ntdll.dll!ZwAlpcConnectPort("\\PdcPort") -> syscall -> ntoskrnl.exe!AlpcpConnectPort Opening \\.\PdcPort fails with STATUS_OBJECT_NAME_NOT_FOUND when pdc.sys hasn't been initialized. Pdc.sys also provides the various hooks for sleep resumption events, which means if it's not loaded, then our "real time" timer is actually on "program time". Finally STATUS_OBJECT_NAME_ NOT_FOUND is passed through RtlNtStatusToDosError, which returns ERROR_ FILE_NOT_FOUND. Therefore, in the case where the function returns ERROR_ FILE_NOT_FOUND, we don't mind, since the timer we're using will correspond fine with the lack of sleep resumption notifications. This applies, for example, to Docker users. Fixes #35447 Fixes #35482 Change-Id: I9e1ce5bbc54b9da55ff7a3918b5da28112647eee Reviewed-on: https://go-review.googlesource.com/c/go/+/208317Reviewed-by: Jason A. Donenfeld <Jason@zx2c4.com> Reviewed-by: Austin Clements <austin@google.com> Run-TryBot: Jason A. Donenfeld <Jason@zx2c4.com> TryBot-Result: Gobot Gobot <gobot@golang.org>
-
Michael Matloob authored
An Example function with arguments is not a valid example to be run with go test. Don't return those functions from Examples. This means that some functions that were previously showing up in Examples will no longer show up. But those functions were not being tested properly so the fact that they were showing up is misleading. This fixes an issue where a confusing compiler error was showing up when running go test on a file with an invalid example. While that issue could have been fixed by returning an error, this is more consistent with the behavior of go/doc.Examples, and the tests checker in vet will catch this issue. Fixes #35284 Change-Id: I2101a7d19f38522ef9c2e50967f9cfb30d28c730 Reviewed-on: https://go-review.googlesource.com/c/go/+/211357 Run-TryBot: Michael Matloob <matloob@golang.org> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Jay Conrod <jayconrod@google.com>
-
- 15 Dec, 2019 1 commit
-
-
Fazlul Shahriar authored
Fixes #35753 Change-Id: I38674c59c601785eb25b778dc25efdb92231dd9b Reviewed-on: https://go-review.googlesource.com/c/go/+/208223 Run-TryBot: Emmanuel Odeke <emm.odeke@gmail.com> TryBot-Result: Gobot Gobot <gobot@golang.org> Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
-