summaryrefslogtreecommitdiff
path: root/internal/generated
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2024-02-27 09:52:36 +0200
committerPaul Buetow <paul@buetow.org>2024-02-27 09:52:36 +0200
commit2745f74f3db314a94ae181fb53963bf853db3833 (patch)
tree143cf8557089835906e3d899c8b18fcb00023cac /internal/generated
parentd8441fff4bbf2739cc0e6c046035bf176158954a (diff)
use generated tracepoints.c
Diffstat (limited to 'internal/generated')
-rw-r--r--internal/generated/Makefile4
-rw-r--r--internal/generated/nqc.raku16
-rw-r--r--internal/generated/tracepoints.raku2
-rw-r--r--internal/generated/tracepoints/tracepoints.go54
-rw-r--r--internal/generated/types/types.go257
5 files changed, 260 insertions, 73 deletions
diff --git a/internal/generated/Makefile b/internal/generated/Makefile
index 32911d2..b132bb3 100644
--- a/internal/generated/Makefile
+++ b/internal/generated/Makefile
@@ -4,14 +4,14 @@ generate: tracepoints types
.PHONY: tracepoints
tracepoints:
- cat ../c/tracepoints/*.c \
+ cat ../c/*/*.c \
| raku tracepoints.raku \
| goimports | gofmt \
| tee tracepoints/tracepoints.go
.PHONY: types
types:
- cat ../c/types.h \
+ ( cat ../c/types.h; grep -h '^#define' ../c/*/*.c ) \
| raku nqc.raku \
| goimports | gofmt \
| tee types/types.go
diff --git a/internal/generated/nqc.raku b/internal/generated/nqc.raku
index e5ea4e1..e237b3f 100644
--- a/internal/generated/nqc.raku
+++ b/internal/generated/nqc.raku
@@ -44,7 +44,7 @@ class NQCToGoActions {
method constant($/) {
push @!const-names: ~$<identifier>;
- my $const-type = $<identifier>.ends-with('_OP_ID') ?? ' OpId' !! '';
+ my $const-type = $<identifier>.starts-with('SYS_') ?? ' SyscallId ' !! '';
make qq:to/END/;
const {$<identifier>}$const-type = {$<number>}
@@ -53,14 +53,14 @@ class NQCToGoActions {
method !constant-go-string-method returns Str {
qq:to/END/;
- type OpId uint32
+ type SyscallId uint32
- func (o OpId) String() string \{
- switch (o) \{
- {@!const-names.grep(/_OP_ID$/).map({
- "case $_: return \"{$_.subst('_OP_ID', '').lc}\""
+ func (s SyscallId) String() string \{
+ switch (s) \{
+ {@!const-names.grep(/^SYS_/).map({
+ "case $_: return \"{$_.subst('SYS_', '').lc}\""
}).join('; ')}
- default: panic(fmt.Sprintf("Unknown OpId: %d", o))
+ default: panic(fmt.Sprintf("Unknown SyscallId: %d", s))
\}
\}
END
@@ -120,7 +120,7 @@ class NQCToGoActions {
}
method member($/) {
- my Str $type = $<identifier>.made eq 'OpId' ?? 'OpId' !! $<type>.made;
+ my Str $type = $<identifier>.made eq 'SyscallId' ?? 'SyscallId' !! $<type>.made;
make $<identifier>.made ~ ' ' ~ ($<arraysize> // '') ~ $type;
}
diff --git a/internal/generated/tracepoints.raku b/internal/generated/tracepoints.raku
index e5cb29a..0afdd7f 100644
--- a/internal/generated/tracepoints.raku
+++ b/internal/generated/tracepoints.raku
@@ -11,6 +11,6 @@ say qq:to/END/;
package tracepoints
var List = []string\{
- t{@tracepoints.map({ "\"$_\"," }).join("\n\t") }
+ {@tracepoints.map({ "\"$_\"," }).join("\n\t") }
\}
END
diff --git a/internal/generated/tracepoints/tracepoints.go b/internal/generated/tracepoints/tracepoints.go
index cfd1fd3..b0ce16d 100644
--- a/internal/generated/tracepoints/tracepoints.go
+++ b/internal/generated/tracepoints/tracepoints.go
@@ -2,14 +2,62 @@
package tracepoints
var List = []string{
- "enter_close",
+ "exit_cachestat",
+ "enter_cachestat",
+ "exit_close_range",
+ "enter_close_range",
"exit_close",
+ "enter_close",
+ "exit_fchown",
+ "enter_fchown",
+ "exit_fchmod",
+ "enter_fchmod",
+ "exit_fchdir",
+ "enter_fchdir",
+ "exit_ftruncate",
+ "enter_ftruncate",
+ "exit_copy_file_range",
+ "enter_copy_file_range",
+ "exit_pwrite",
+ "enter_pwrite",
+ "exit_pread",
+ "enter_pread",
+ "exit_write",
+ "enter_write",
+ "exit_read",
+ "enter_read",
+ "exit_lseek",
+ "enter_lseek",
+ "exit_newfstat",
+ "enter_newfstat",
+ "exit_fcntl",
+ "enter_fcntl",
+ "exit_ioctl",
+ "enter_ioctl",
+ "exit_getdents",
+ "enter_getdents",
+ "exit_getdents",
+ "enter_getdents",
+ "exit_sync_file_range",
+ "enter_sync_file_range",
+ "exit_fdatasync",
+ "enter_fdatasync",
+ "exit_fsync",
+ "enter_fsync",
+ "exit_fstatfs",
+ "enter_fstatfs",
+ "exit_flock",
+ "enter_flock",
+ "exit_quotactl_fd",
+ "enter_quotactl_fd",
+ "exit_io_uring_register",
+ "enter_io_uring_register",
+ "exit_io_uring_enter",
+ "enter_io_uring_enter",
"enter_openat",
"exit_openat",
"enter_open",
"exit_open",
"enter_write",
"exit_write",
- "enter_write",
- "exit_write",
}
diff --git a/internal/generated/types/types.go b/internal/generated/types/types.go
index 6fed235..c87d276 100644
--- a/internal/generated/types/types.go
+++ b/internal/generated/types/types.go
@@ -8,57 +8,139 @@ import (
"sync"
)
-type OpId uint32
-
-func (o OpId) String() string {
- switch o {
- case OPENAT_ENTER_OP_ID:
- return "openat_enter"
- case OPENAT_EXIT_OP_ID:
- return "openat_exit"
- case OPEN_ENTER_OP_ID:
- return "open_enter"
- case OPEN_EXIT_OP_ID:
- return "open_exit"
- case CLOSE_ENTER_OP_ID:
- return "close_enter"
- case CLOSE_EXIT_OP_ID:
- return "close_exit"
- case WRITE_ENTER_OP_ID:
- return "write_enter"
- case WRITE_EXIT_OP_ID:
- return "write_exit"
- case WRITEV_ENTER_OP_ID:
- return "writev_enter"
- case WRITEV_EXIT_OP_ID:
- return "writev_exit"
+type SyscallId uint32
+
+func (s SyscallId) String() string {
+ switch s {
+ case SYS_EXIT_CACHESTAT:
+ return "exit_cachestat"
+ case SYS_ENTER_CACHESTAT:
+ return "enter_cachestat"
+ case SYS_EXIT_CLOSE_RANGE:
+ return "exit_close_range"
+ case SYS_ENTER_CLOSE_RANGE:
+ return "enter_close_range"
+ case SYS_EXIT_CLOSE:
+ return "exit_close"
+ case SYS_ENTER_CLOSE:
+ return "enter_close"
+ case SYS_EXIT_FCHOWN:
+ return "exit_fchown"
+ case SYS_ENTER_FCHOWN:
+ return "enter_fchown"
+ case SYS_EXIT_FCHMOD:
+ return "exit_fchmod"
+ case SYS_ENTER_FCHMOD:
+ return "enter_fchmod"
+ case SYS_EXIT_FCHDIR:
+ return "exit_fchdir"
+ case SYS_ENTER_FCHDIR:
+ return "enter_fchdir"
+ case SYS_EXIT_FTRUNCATE:
+ return "exit_ftruncate"
+ case SYS_ENTER_FTRUNCATE:
+ return "enter_ftruncate"
+ case SYS_EXIT_COPY_FILE_RANGE:
+ return "exit_copy_file_range"
+ case SYS_ENTER_COPY_FILE_RANGE:
+ return "enter_copy_file_range"
+ case SYS_EXIT_PWRITE64:
+ return "exit_pwrite64"
+ case SYS_ENTER_PWRITE64:
+ return "enter_pwrite64"
+ case SYS_EXIT_PREAD64:
+ return "exit_pread64"
+ case SYS_ENTER_PREAD64:
+ return "enter_pread64"
+ case SYS_EXIT_WRITE:
+ return "exit_write"
+ case SYS_ENTER_WRITE:
+ return "enter_write"
+ case SYS_EXIT_READ:
+ return "exit_read"
+ case SYS_ENTER_READ:
+ return "enter_read"
+ case SYS_EXIT_LSEEK:
+ return "exit_lseek"
+ case SYS_ENTER_LSEEK:
+ return "enter_lseek"
+ case SYS_EXIT_NEWFSTAT:
+ return "exit_newfstat"
+ case SYS_ENTER_NEWFSTAT:
+ return "enter_newfstat"
+ case SYS_EXIT_FCNTL:
+ return "exit_fcntl"
+ case SYS_ENTER_FCNTL:
+ return "enter_fcntl"
+ case SYS_EXIT_IOCTL:
+ return "exit_ioctl"
+ case SYS_ENTER_IOCTL:
+ return "enter_ioctl"
+ case SYS_EXIT_GETDENTS64:
+ return "exit_getdents64"
+ case SYS_ENTER_GETDENTS64:
+ return "enter_getdents64"
+ case SYS_EXIT_GETDENTS:
+ return "exit_getdents"
+ case SYS_ENTER_GETDENTS:
+ return "enter_getdents"
+ case SYS_EXIT_SYNC_FILE_RANGE:
+ return "exit_sync_file_range"
+ case SYS_ENTER_SYNC_FILE_RANGE:
+ return "enter_sync_file_range"
+ case SYS_EXIT_FDATASYNC:
+ return "exit_fdatasync"
+ case SYS_ENTER_FDATASYNC:
+ return "enter_fdatasync"
+ case SYS_EXIT_FSYNC:
+ return "exit_fsync"
+ case SYS_ENTER_FSYNC:
+ return "enter_fsync"
+ case SYS_EXIT_FSTATFS:
+ return "exit_fstatfs"
+ case SYS_ENTER_FSTATFS:
+ return "enter_fstatfs"
+ case SYS_EXIT_FLOCK:
+ return "exit_flock"
+ case SYS_ENTER_FLOCK:
+ return "enter_flock"
+ case SYS_EXIT_QUOTACTL_FD:
+ return "exit_quotactl_fd"
+ case SYS_ENTER_QUOTACTL_FD:
+ return "enter_quotactl_fd"
+ case SYS_EXIT_IO_URING_REGISTER:
+ return "exit_io_uring_register"
+ case SYS_ENTER_IO_URING_REGISTER:
+ return "enter_io_uring_register"
+ case SYS_EXIT_IO_URING_ENTER:
+ return "exit_io_uring_enter"
+ case SYS_ENTER_IO_URING_ENTER:
+ return "enter_io_uring_enter"
+ case SYS_ENTER_OPEN:
+ return "enter_open"
+ case SYS_EXIT_OPEN:
+ return "exit_open"
+ case SYS_ENTER_OPENAT:
+ return "enter_openat"
+ case SYS_EXIT_OPENAT:
+ return "exit_openat"
default:
- panic(fmt.Sprintf("Unknown OpId: %d", o))
+ panic(fmt.Sprintf("Unknown SyscallId: %d", s))
}
}
const MAX_FILENAME_LENGTH = 256
const MAX_PROGNAME_LENGTH = 16
-const OPENAT_ENTER_OP_ID OpId = 1
-const OPENAT_EXIT_OP_ID OpId = 2
-const OPEN_ENTER_OP_ID OpId = 3
-const OPEN_EXIT_OP_ID OpId = 4
-const CLOSE_ENTER_OP_ID OpId = 5
-const CLOSE_EXIT_OP_ID OpId = 6
-const WRITE_ENTER_OP_ID OpId = 7
-const WRITE_EXIT_OP_ID OpId = 8
-const WRITEV_ENTER_OP_ID OpId = 9
-const WRITEV_EXIT_OP_ID OpId = 10
type NullEvent struct {
- OpId OpId
- Pid uint32
- Tid uint32
- Time uint32
+ SyscallId SyscallId
+ Pid uint32
+ Tid uint32
+ Time uint32
}
func (n NullEvent) String() string {
- return fmt.Sprintf("OpId:%v Pid:%v Tid:%v Time:%v", n.OpId, n.Pid, n.Tid, n.Time)
+ return fmt.Sprintf("SyscallId:%v Pid:%v Tid:%v Time:%v", n.SyscallId, n.Pid, n.Tid, n.Time)
}
var poolOfNullEvents = sync.Pool{
@@ -79,15 +161,15 @@ func (n *NullEvent) Recycle() {
}
type FdEvent struct {
- OpId OpId
- Pid uint32
- Tid uint32
- Time uint32
- Fd int32
+ SyscallId SyscallId
+ Pid uint32
+ Tid uint32
+ Time uint32
+ Fd int32
}
func (f FdEvent) String() string {
- return fmt.Sprintf("OpId:%v Pid:%v Tid:%v Time:%v Fd:%v", f.OpId, f.Pid, f.Tid, f.Time, f.Fd)
+ return fmt.Sprintf("SyscallId:%v Pid:%v Tid:%v Time:%v Fd:%v", f.SyscallId, f.Pid, f.Tid, f.Time, f.Fd)
}
var poolOfFdEvents = sync.Pool{
@@ -108,15 +190,15 @@ func (f *FdEvent) Recycle() {
}
type RwEvent struct {
- OpId OpId
- Pid uint32
- Tid uint32
- Time uint32
- Size uint64
+ SyscallId SyscallId
+ Pid uint32
+ Tid uint32
+ Time uint32
+ Size uint64
}
func (r RwEvent) String() string {
- return fmt.Sprintf("OpId:%v Pid:%v Tid:%v Time:%v Size:%v", r.OpId, r.Pid, r.Tid, r.Time, r.Size)
+ return fmt.Sprintf("SyscallId:%v Pid:%v Tid:%v Time:%v Size:%v", r.SyscallId, r.Pid, r.Tid, r.Time, r.Size)
}
var poolOfRwEvents = sync.Pool{
@@ -137,16 +219,16 @@ func (r *RwEvent) Recycle() {
}
type OpenEnterEvent struct {
- OpId OpId
- Pid uint32
- Tid uint32
- Time uint32
- Filename [MAX_FILENAME_LENGTH]byte
- Comm [MAX_PROGNAME_LENGTH]byte
+ SyscallId SyscallId
+ Pid uint32
+ Tid uint32
+ Time uint32
+ Filename [MAX_FILENAME_LENGTH]byte
+ Comm [MAX_PROGNAME_LENGTH]byte
}
func (o OpenEnterEvent) String() string {
- return fmt.Sprintf("OpId:%v Pid:%v Tid:%v Time:%v Filename:%v Comm:%v", o.OpId, o.Pid, o.Tid, o.Time, string(o.Filename[:]), string(o.Comm[:]))
+ return fmt.Sprintf("SyscallId:%v Pid:%v Tid:%v Time:%v Filename:%v Comm:%v", o.SyscallId, o.Pid, o.Tid, o.Time, string(o.Filename[:]), string(o.Comm[:]))
}
var poolOfOpenEnterEvents = sync.Pool{
@@ -165,3 +247,60 @@ func NewOpenEnterEvent(raw []byte) *OpenEnterEvent {
func (o *OpenEnterEvent) Recycle() {
poolOfOpenEnterEvents.Put(o)
}
+
+const SYS_EXIT_CACHESTAT SyscallId = 520
+const SYS_ENTER_CACHESTAT SyscallId = 521
+const SYS_EXIT_CLOSE_RANGE SyscallId = 692
+const SYS_ENTER_CLOSE_RANGE SyscallId = 693
+const SYS_EXIT_CLOSE SyscallId = 694
+const SYS_ENTER_CLOSE SyscallId = 695
+const SYS_EXIT_FCHOWN SyscallId = 704
+const SYS_ENTER_FCHOWN SyscallId = 705
+const SYS_EXIT_FCHMOD SyscallId = 718
+const SYS_ENTER_FCHMOD SyscallId = 719
+const SYS_EXIT_FCHDIR SyscallId = 722
+const SYS_ENTER_FCHDIR SyscallId = 723
+const SYS_EXIT_FTRUNCATE SyscallId = 734
+const SYS_ENTER_FTRUNCATE SyscallId = 735
+const SYS_EXIT_COPY_FILE_RANGE SyscallId = 738
+const SYS_ENTER_COPY_FILE_RANGE SyscallId = 739
+const SYS_EXIT_PWRITE64 SyscallId = 754
+const SYS_ENTER_PWRITE64 SyscallId = 755
+const SYS_EXIT_PREAD64 SyscallId = 756
+const SYS_ENTER_PREAD64 SyscallId = 757
+const SYS_EXIT_WRITE SyscallId = 758
+const SYS_ENTER_WRITE SyscallId = 759
+const SYS_EXIT_READ SyscallId = 760
+const SYS_ENTER_READ SyscallId = 761
+const SYS_EXIT_LSEEK SyscallId = 762
+const SYS_ENTER_LSEEK SyscallId = 763
+const SYS_EXIT_NEWFSTAT SyscallId = 770
+const SYS_ENTER_NEWFSTAT SyscallId = 771
+const SYS_EXIT_FCNTL SyscallId = 814
+const SYS_ENTER_FCNTL SyscallId = 815
+const SYS_EXIT_IOCTL SyscallId = 816
+const SYS_ENTER_IOCTL SyscallId = 817
+const SYS_EXIT_GETDENTS64 SyscallId = 818
+const SYS_ENTER_GETDENTS64 SyscallId = 819
+const SYS_EXIT_GETDENTS SyscallId = 820
+const SYS_ENTER_GETDENTS SyscallId = 821
+const SYS_EXIT_SYNC_FILE_RANGE SyscallId = 914
+const SYS_ENTER_SYNC_FILE_RANGE SyscallId = 915
+const SYS_EXIT_FDATASYNC SyscallId = 916
+const SYS_ENTER_FDATASYNC SyscallId = 917
+const SYS_EXIT_FSYNC SyscallId = 918
+const SYS_ENTER_FSYNC SyscallId = 919
+const SYS_EXIT_FSTATFS SyscallId = 936
+const SYS_ENTER_FSTATFS SyscallId = 937
+const SYS_EXIT_FLOCK SyscallId = 1012
+const SYS_ENTER_FLOCK SyscallId = 1013
+const SYS_EXIT_QUOTACTL_FD SyscallId = 1043
+const SYS_ENTER_QUOTACTL_FD SyscallId = 1044
+const SYS_EXIT_IO_URING_REGISTER SyscallId = 1366
+const SYS_ENTER_IO_URING_REGISTER SyscallId = 1367
+const SYS_EXIT_IO_URING_ENTER SyscallId = 1370
+const SYS_ENTER_IO_URING_ENTER SyscallId = 1371
+const SYS_ENTER_OPEN SyscallId = 1
+const SYS_EXIT_OPEN SyscallId = 2
+const SYS_ENTER_OPENAT SyscallId = 3
+const SYS_EXIT_OPENAT SyscallId = 4