summaryrefslogtreecommitdiff
path: root/internal/generate/tracepointsgo.go
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-05-21 11:39:18 +0300
committerPaul Buetow <paul@buetow.org>2026-05-21 11:39:18 +0300
commitc58aa139f5e7252aefb1bcacb5fa8b9ea8cdcdef (patch)
tree09ae5323e06a3a0b5ade451f1b8e4b9efccb4561 /internal/generate/tracepointsgo.go
parenta0d6f222864301c11afd9c1d3306e6bfe8446d5d (diff)
n7 classify pidfd and misc tail syscalls
Diffstat (limited to 'internal/generate/tracepointsgo.go')
-rw-r--r--internal/generate/tracepointsgo.go7
1 files changed, 5 insertions, 2 deletions
diff --git a/internal/generate/tracepointsgo.go b/internal/generate/tracepointsgo.go
index 47c2e8f..bc44b2f 100644
--- a/internal/generate/tracepointsgo.go
+++ b/internal/generate/tracepointsgo.go
@@ -10,7 +10,7 @@ import (
)
var secRe = regexp.MustCompile(`^SEC.*sys_((?:enter|exit)_[a-z_0-9]+)`)
-var kindLineRe = regexp.MustCompile(`^(sys_enter_[a-z0-9_]+)\s+is a struct\s+([a-z0-9_]+)(?:\s+.*)?$`)
+var kindLineRe = regexp.MustCompile(`^(sys_enter_[a-z0-9_]+)\s+is a struct\s+([a-z0-9_]+)(?:.*\(kind=([a-z0-9-]+)\))?\s*$`)
// ExtractTracepoints reads generated C code and extracts tracepoint names from
// SEC annotations, producing the generated_tracepoints.go content.
@@ -66,7 +66,10 @@ func extractSyscallKinds(r io.Reader) (map[string]string, error) {
continue
}
syscall := strings.TrimPrefix(m[1], "sys_enter_")
- kind := normalizeStructKind(m[2])
+ kind := strings.TrimSpace(m[3])
+ if kind == "" {
+ kind = normalizeStructKind(m[2])
+ }
if kind == "" {
continue
}