From d3d9c4fb2c33c22cd947f9bfd41a5d85f4ed9418 Mon Sep 17 00:00:00 2001 From: Michael Pratt Date: Tue, 8 Mar 2022 13:59:57 -0800 Subject: [PATCH] Bump gVisor build tags to go1.20 Upstream Go tip has updated its version to 1.19, so we need to bump these build tags to allow tip testing. This CL bumps the minimum version in pkg/sync/runtime_amd64.s from 1.8 to 1.14. The offset was different prior to Go 1.14. Ideally we'll get checklinkname (or equivalent) to check these remaining unsafe uses (like internal struct field offsets) soon. For golang/go#51445. PiperOrigin-RevId: 433304124 --- pkg/gohacks/gohacks_unsafe.go | 4 ++-- pkg/goid/goid.go | 4 ++-- pkg/procid/procid_amd64.s | 4 ++-- pkg/procid/procid_arm64.s | 4 ++-- pkg/sync/mutex_unsafe.go | 4 ++-- pkg/sync/runtime_amd64.go | 4 ++-- pkg/sync/runtime_amd64.s | 4 ++-- pkg/sync/runtime_unsafe.go | 4 ++-- 8 files changed, 16 insertions(+), 16 deletions(-) diff --git a/pkg/gohacks/gohacks_unsafe.go b/pkg/gohacks/gohacks_unsafe.go index a055b3e8d..c4bf360a5 100644 --- a/pkg/gohacks/gohacks_unsafe.go +++ b/pkg/gohacks/gohacks_unsafe.go @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -//go:build go1.13 && !go1.19 -// +build go1.13,!go1.19 +//go:build go1.13 && !go1.20 +// +build go1.13,!go1.20 // //go:linkname directives type-checked by checklinkname. Any other // non-linkname assumptions outside the Go 1 compatibility guarantee should diff --git a/pkg/goid/goid.go b/pkg/goid/goid.go index 0887f79ab..d92d09e56 100644 --- a/pkg/goid/goid.go +++ b/pkg/goid/goid.go @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -//go:build go1.12 && !go1.19 -// +build go1.12,!go1.19 +//go:build go1.12 && !go1.20 +// +build go1.12,!go1.20 // Check type signatures when updating Go version. diff --git a/pkg/procid/procid_amd64.s b/pkg/procid/procid_amd64.s index 7073a0810..29569fb79 100644 --- a/pkg/procid/procid_amd64.s +++ b/pkg/procid/procid_amd64.s @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -//go:build amd64 && go1.8 && !go1.19 && go1.1 -// +build amd64,go1.8,!go1.19,go1.1 +//go:build amd64 && go1.8 && !go1.20 && go1.1 +// +build amd64,go1.8,!go1.20,go1.1 // //go:linkname directives type-checked by checklinkname. Any other // non-linkname assumptions outside the Go 1 compatibility guarantee should diff --git a/pkg/procid/procid_arm64.s b/pkg/procid/procid_arm64.s index bdc3bdcb0..6d783b234 100644 --- a/pkg/procid/procid_arm64.s +++ b/pkg/procid/procid_arm64.s @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -//go:build arm64 && go1.8 && !go1.19 && go1.1 -// +build arm64,go1.8,!go1.19,go1.1 +//go:build arm64 && go1.8 && !go1.20 && go1.1 +// +build arm64,go1.8,!go1.20,go1.1 // //go:linkname directives type-checked by checklinkname. Any other // non-linkname assumptions outside the Go 1 compatibility guarantee should diff --git a/pkg/sync/mutex_unsafe.go b/pkg/sync/mutex_unsafe.go index e4701b464..c4111cc68 100644 --- a/pkg/sync/mutex_unsafe.go +++ b/pkg/sync/mutex_unsafe.go @@ -3,8 +3,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build go1.13 && !go1.19 -// +build go1.13,!go1.19 +//go:build go1.13 && !go1.20 +// +build go1.13,!go1.20 // When updating the build constraint (above), check that syncMutex matches the // standard library sync.Mutex definition. diff --git a/pkg/sync/runtime_amd64.go b/pkg/sync/runtime_amd64.go index 15396235b..04a63c93c 100644 --- a/pkg/sync/runtime_amd64.go +++ b/pkg/sync/runtime_amd64.go @@ -3,8 +3,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build amd64 && go1.8 && !go1.19 && !goexperiment.staticlockranking -// +build amd64,go1.8,!go1.19,!goexperiment.staticlockranking +//go:build amd64 && go1.8 && !go1.20 && !goexperiment.staticlockranking +// +build amd64,go1.8,!go1.20,!goexperiment.staticlockranking package sync diff --git a/pkg/sync/runtime_amd64.s b/pkg/sync/runtime_amd64.s index 10863e3c9..b30442cd0 100644 --- a/pkg/sync/runtime_amd64.s +++ b/pkg/sync/runtime_amd64.s @@ -12,8 +12,8 @@ // See the License for the specific language governing permissions and // limitations under the License. -//go:build amd64 && go1.8 && !go1.19 && !goexperiment.staticlockranking -// +build amd64,go1.8,!go1.19,!goexperiment.staticlockranking +//go:build amd64 && go1.14 && !go1.20 && !goexperiment.staticlockranking +// +build amd64,go1.14,!go1.20,!goexperiment.staticlockranking #include "textflag.h" diff --git a/pkg/sync/runtime_unsafe.go b/pkg/sync/runtime_unsafe.go index cd7b9025b..16e09417d 100644 --- a/pkg/sync/runtime_unsafe.go +++ b/pkg/sync/runtime_unsafe.go @@ -3,8 +3,8 @@ // Use of this source code is governed by a BSD-style // license that can be found in the LICENSE file. -//go:build go1.13 && !go1.19 -// +build go1.13,!go1.19 +//go:build go1.13 && !go1.20 +// +build go1.13,!go1.20 // //go:linkname directives type-checked by checklinkname. Any other // non-linkname assumptions outside the Go 1 compatibility guarantee should