[dev.boringcrypto.go1.12] all: merge go1.12.17 into dev.boringcrypto.go1.12

Change-Id: I2d0dd2e7e141bbcebd3a4ae72d1e149997af3d26
diff --git a/doc/devel/release.html b/doc/devel/release.html
index 38a9040..3349c43 100644
--- a/doc/devel/release.html
+++ b/doc/devel/release.html
@@ -146,6 +146,12 @@
 1.12.16 milestone</a> on our issue tracker for details.
 </p>
 
+<p>
+go1.12.17 (released 2020/02/12) includes a fix to the runtime. See
+the <a href="https://github.com/golang/go/issues?q=milestone%3AGo1.12.17+label%3ACherryPickApproved">Go
+1.12.17 milestone</a> on our issue tracker for details.
+</p>
+
 <h2 id="go1.11">go1.11 (released 2018/08/24)</h2>
 
 <p>
diff --git a/src/cmd/go/internal/modload/query_test.go b/src/cmd/go/internal/modload/query_test.go
index d6e52c6..2b4a871 100644
--- a/src/cmd/go/internal/modload/query_test.go
+++ b/src/cmd/go/internal/modload/query_test.go
@@ -119,8 +119,6 @@
 	{path: queryRepoV2, query: "v0.0.1+foo", vers: "v2.0.0-20180704023347-179bc86b1be3"},
 	{path: queryRepoV2, query: "latest", vers: "v2.5.5"},
 
-	{path: queryRepoV3, query: "latest", vers: "v3.0.0-20180704024501-e0cf3de987e6"},
-
 	{path: emptyRepo, query: "latest", vers: "v0.0.0-20180704023549-7bb914627242"},
 	{path: emptyRepo, query: ">v0.0.0", err: `no matching versions for query ">v0.0.0"`},
 	{path: emptyRepo, query: "<v10.0.0", err: `no matching versions for query "<v10.0.0"`},
diff --git a/src/runtime/os_windows.go b/src/runtime/os_windows.go
index a278ddd..a477f47 100644
--- a/src/runtime/os_windows.go
+++ b/src/runtime/os_windows.go
@@ -262,8 +262,9 @@
 
 func monitorSuspendResume() {
 	const (
-		_DEVICE_NOTIFY_CALLBACK = 2
-		_ERROR_FILE_NOT_FOUND   = 2
+		_DEVICE_NOTIFY_CALLBACK   = 2
+		_ERROR_FILE_NOT_FOUND     = 2
+		_ERROR_INVALID_PARAMETERS = 87
 	)
 	type _DEVICE_NOTIFY_SUBSCRIBE_PARAMETERS struct {
 		callback uintptr
@@ -301,6 +302,10 @@
 		// also have their clock on "program time", and therefore
 		// don't want or need this anyway.
 		return
+	case _ERROR_INVALID_PARAMETERS:
+		// This is seen when running in Windows Docker.
+		// See issue 36557.
+		return
 	default:
 		println("runtime: PowerRegisterSuspendResumeNotification failed with errno=", ret)
 		throw("runtime: PowerRegisterSuspendResumeNotification failure")