From 95e0dc0285bf68b9e62450a198333e4e4027d8b0 Mon Sep 17 00:00:00 2001 From: rinor Date: Fri, 7 Jun 2024 16:43:11 +0000 Subject: [PATCH] chore: strace klib temporary backward compatibility --- cmd/flags_run_local_instance.go | 8 ++++++-- cmd/flags_run_local_instance_test.go | 2 +- 2 files changed, 7 insertions(+), 3 deletions(-) diff --git a/cmd/flags_run_local_instance.go b/cmd/flags_run_local_instance.go index 21fe3899..710149c9 100644 --- a/cmd/flags_run_local_instance.go +++ b/cmd/flags_run_local_instance.go @@ -4,7 +4,9 @@ import ( "debug/elf" "fmt" "net" + "os" "os/exec" + "path/filepath" "slices" "strconv" "strings" @@ -45,7 +47,7 @@ func (flags *RunLocalInstanceCommandFlags) MergeToConfig(c *types.Config) error c.Debugflags = []string{} if flags.Trace { - c.Debugflags = []string{"trace", "debugsyscalls", "fault"} + c.Debugflags = []string{"trace", "debugsyscalls", "fault", "futex_trace"} // "futex_trace" is just for temporay compatibility } if flags.Debug { @@ -79,7 +81,9 @@ func (flags *RunLocalInstanceCommandFlags) MergeToConfig(c *types.Config) error } if (flags.Trace || flags.SyscallSummary) && !slices.Contains(c.Klibs, "strace") { - c.Klibs = append(c.Klibs, "strace") // debugsyscalls, notrace, tracelist, syscall_summary + if _, err := os.Stat(filepath.Join(c.KlibDir, "strace")); err == nil { + c.Klibs = append(c.Klibs, "strace") // debugsyscalls, notrace, tracelist, syscall_summary + } } if flags.MissingFiles { diff --git a/cmd/flags_run_local_instance_test.go b/cmd/flags_run_local_instance_test.go index 23b52e68..7737cb36 100644 --- a/cmd/flags_run_local_instance_test.go +++ b/cmd/flags_run_local_instance_test.go @@ -46,7 +46,7 @@ func TestRunLocalInstanceFlagsMergeToConfig(t *testing.T) { expected := &types.Config{ BuildDir: "", - Debugflags: []string{"trace", "debugsyscalls", "fault", "syscall_summary"}, + Debugflags: []string{"trace", "debugsyscalls", "fault", "futex_trace", "syscall_summary"}, // "futex_trace" is just for temporay compatibility Force: true, NoTrace: []string{"a"}, RunConfig: types.RunConfig{