From 9e5bd0be6b4daaf4593959c6c1a3708cfc1d0969 Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Mon, 1 Jul 2024 14:26:05 +0200 Subject: pkg/mgrconfig: allow to disable remote coverage and coverage edges --- pkg/rpcserver/rpcserver.go | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'pkg/rpcserver') diff --git a/pkg/rpcserver/rpcserver.go b/pkg/rpcserver/rpcserver.go index cdeb6f40b..58ef2d363 100644 --- a/pkg/rpcserver/rpcserver.go +++ b/pkg/rpcserver/rpcserver.go @@ -85,10 +85,14 @@ func New(cfg *mgrconfig.Config, mgr Manager, debug bool) (*Server, error) { if err != nil { return nil, err } + features := flatrpc.AllFeatures + if !cfg.Experimental.RemoteCover { + features &= ^flatrpc.FeatureExtraCoverage + } return newImpl(&Config{ Config: vminfo.Config{ Target: cfg.Target, - Features: flatrpc.AllFeatures, + Features: features, Syscalls: cfg.Syscalls, Debug: debug, Cover: cfg.Cover, @@ -99,7 +103,7 @@ func New(cfg *mgrconfig.Config, mgr Manager, debug bool) (*Server, error) { RPC: cfg.RPC, VMLess: cfg.VMLess, // gVisor coverage is not a trace, so producing edges won't work. - UseCoverEdges: cfg.Type != targets.GVisor, + UseCoverEdges: cfg.Experimental.CoverEdges && cfg.Type != targets.GVisor, // gVisor/Starnix are not Linux, so filtering against Linux ranges won't work. FilterSignal: cfg.Type != targets.GVisor && cfg.Type != targets.Starnix, PrintMachineCheck: true, -- cgit mrf-deployment