From d777746776b71112ac098d561d633106eef853c7 Mon Sep 17 00:00:00 2001 From: Etienne Perot Date: Wed, 13 Dec 2023 15:41:54 -0800 Subject: [PATCH] `runsc/boot/filter/config`: Import platforms from `platforms` package. This unifies the conditional compilation rules of the platforms that are precompiled into `runsc` and its seccomp filters, rather than needlessly maintaining it into two places. This also fixes debug-mode compilation. Debug builds currently can't include the KVM platform due to its use of `nosplit` in stacks that become too big in debug builds. This was previously worked around by excluding KVM from the list of platforms built for debug builds in `//pkg/sentry/platform/platform`, but this build dependency was re-introduced in `//runsc/boot/filter/config`. This change fixes this. PiperOrigin-RevId: 590735685 --- runsc/boot/filter/config/BUILD | 3 +-- runsc/boot/filter/config/config_precompiled.go | 7 ++----- 2 files changed, 3 insertions(+), 7 deletions(-) diff --git a/runsc/boot/filter/config/BUILD b/runsc/boot/filter/config/BUILD index 3a8013dd3..e282c7ea7 100644 --- a/runsc/boot/filter/config/BUILD +++ b/runsc/boot/filter/config/BUILD @@ -34,10 +34,9 @@ go_library( "//pkg/sentry/devices/nvproxy", "//pkg/sentry/devices/tpuproxy", "//pkg/sentry/platform", - "//pkg/sentry/platform/kvm", - "//pkg/sentry/platform/systrap", "//pkg/sentry/socket/hostinet", "//pkg/tcpip/link/fdbased", + "//runsc/boot/platforms", "@org_golang_x_sync//errgroup:go_default_library", "@org_golang_x_sys//unix:go_default_library", ], diff --git a/runsc/boot/filter/config/config_precompiled.go b/runsc/boot/filter/config/config_precompiled.go index 0c8b7fb47..279863613 100644 --- a/runsc/boot/filter/config/config_precompiled.go +++ b/runsc/boot/filter/config/config_precompiled.go @@ -23,11 +23,8 @@ import ( "gvisor.dev/gvisor/pkg/seccomp/precompiledseccomp" "gvisor.dev/gvisor/pkg/sentry/platform" - // Compile filters for KVM. - _ "gvisor.dev/gvisor/pkg/sentry/platform/kvm" - - // Compile filters for Systrap. - _ "gvisor.dev/gvisor/pkg/sentry/platform/systrap" + // Import platforms that we need to precompile filters for. + _ "gvisor.dev/gvisor/runsc/boot/platforms" ) // Variable names used in precompiled filters.