From 42f8733fc7c3fe23543d9da258b7ec91e11c9a63 Mon Sep 17 00:00:00 2001 From: Paul Buetow Date: Wed, 28 Feb 2024 01:17:48 +0200 Subject: no need of debugfs package. older kernels may not have some of the tracepoints. --- internal/debugfs/debugfs.go | 57 --------------------------------------------- 1 file changed, 57 deletions(-) delete mode 100644 internal/debugfs/debugfs.go (limited to 'internal/debugfs') diff --git a/internal/debugfs/debugfs.go b/internal/debugfs/debugfs.go deleted file mode 100644 index 80ac436..0000000 --- a/internal/debugfs/debugfs.go +++ /dev/null @@ -1,57 +0,0 @@ -package debugfs - -import ( - "bufio" - "fmt" - "os" - "path/filepath" - "strings" -) - -// Return tracepoints with 'unsigned int fd', which are I/O tracepoints on FDs -func TracepointsWithFd() ([]string, error) { - return tracepointsWith("unsigned int fd") -} - -func tracepointsWith(field string) ([]string, error) { - var tracepoints []string - - matches, err := filepath.Glob("/sys/kernel/debug/tracing/events/syscalls/*/format") - if err != nil { - return tracepoints, err - } - if len(matches) == 0 { - return tracepoints, fmt.Errorf("Unable to gather tracepoints with FDs") - } - - for _, formatPath := range matches { - has, err := hasField(formatPath, field) - if err != nil { - return tracepoints, err - } - if !has { - continue - } - tracepoints = append(tracepoints, filepath.Base(filepath.Dir(formatPath))) - } - - return tracepoints, nil -} - -func hasField(formatPath, field string) (bool, error) { - file, err := os.Open(formatPath) - if err != nil { - return false, err - } - defer file.Close() - - scanner := bufio.NewScanner(file) - for scanner.Scan() { - line := scanner.Text() - if strings.Contains(line, fmt.Sprintf("field:%s;", field)) { - return true, nil - } - } - - return false, nil -} -- cgit v1.2.3