summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorPaul Buetow <paul@buetow.org>2026-03-10 23:08:29 +0200
committerPaul Buetow <paul@buetow.org>2026-03-10 23:08:29 +0200
commitfeb34d807e85d626a7ff08a51bba17f93375ddaa (patch)
tree94b1de33313f7b3e68e232c70c86d63c2ef15a97 /internal
parentdb75c8b17549fdfa23cc8622770d257fa0d7420f (diff)
config: centralize default buffer sizes (task 388)
Diffstat (limited to 'internal')
-rw-r--r--internal/config/buffers.go10
-rw-r--r--internal/flags/flags.go3
-rw-r--r--internal/ior.go6
3 files changed, 15 insertions, 4 deletions
diff --git a/internal/config/buffers.go b/internal/config/buffers.go
new file mode 100644
index 0000000..61986d8
--- /dev/null
+++ b/internal/config/buffers.go
@@ -0,0 +1,10 @@
+package config
+
+const (
+ // DefaultChannelBufferSize is the shared default for high-volume trace and
+ // TUI event channels.
+ DefaultChannelBufferSize = 4096
+
+ // DefaultEventMapSize is the default BPF event ring-buffer map size.
+ DefaultEventMapSize = DefaultChannelBufferSize * 16
+)
diff --git a/internal/flags/flags.go b/internal/flags/flags.go
index 50a5926..df4187c 100644
--- a/internal/flags/flags.go
+++ b/internal/flags/flags.go
@@ -12,6 +12,7 @@ import (
"time"
"ior/internal/collapse"
+ appconfig "ior/internal/config"
"ior/internal/globalfilter"
)
@@ -56,7 +57,7 @@ func NewFlags() Config {
return Config{
PidFilter: -1,
TidFilter: -1,
- EventMapSize: 4096 * 16,
+ EventMapSize: appconfig.DefaultEventMapSize,
Duration: 900,
LiveInterval: 200 * time.Millisecond,
TUIExportEnable: true,
diff --git a/internal/ior.go b/internal/ior.go
index 8258f01..c14ab37 100644
--- a/internal/ior.go
+++ b/internal/ior.go
@@ -15,6 +15,7 @@ import (
"syscall"
"time"
+ appconfig "ior/internal/config"
"ior/internal/event"
"ior/internal/flags"
"ior/internal/flamegraph"
@@ -201,7 +202,7 @@ func tuiTraceStarterFromRunTrace(
bindings.SetEventStreamSource(streamSource)
bindings.SetLiveTrie(liveTrie)
}
- streamEvents := make(chan eventstream.StreamEvent, 4096)
+ streamEvents := make(chan eventstream.StreamEvent, appconfig.DefaultChannelBufferSize)
go func() {
for ev := range streamEvents {
@@ -372,8 +373,7 @@ func setupBPFModule(parentCtx context.Context, cfg flags.Config) (*bpf.Module, *
}
func setupEventChannel(bpfModule *bpf.Module) (chan []byte, error) {
- // 4096 channel size minimizes event drops.
- ch := make(chan []byte, 4096)
+ ch := make(chan []byte, appconfig.DefaultChannelBufferSize)
rb, err := bpfModule.InitRingBuf("event_map", ch)
if err != nil {
return nil, err