maybe hopefully fixed cpu fork logging

This commit is contained in:
2026-05-22 21:41:32 +03:00
parent 83422abaf4
commit 10155bfaf1
2 changed files with 323 additions and 34 deletions
+12 -5
View File
@@ -165,6 +165,7 @@ ALLOW_DANGEROUS=${ALLOW_DANGEROUS:-0}
FORK_BOMB_SECONDS=${FORK_BOMB_SECONDS:-5}
CREATION_TIME_ITERS=${CREATION_TIME_ITERS:-"100 1000 10000"}
CREATION_TIME_SECONDS=${CREATION_TIME_SECONDS:-60}
PROC_SAMPLE_STEP=${PROC_SAMPLE_STEP:-50}
CREATION_TIME_STDOUT="$OUT_DIR/creation_time_stdout.log"
CREATION_TIME_STDERR="$OUT_DIR/creation_time_stderr.log"
@@ -176,11 +177,17 @@ run_with_sampling \
"$CREATION_TIME_SECONDS"
if [ "$ALLOW_DANGEROUS" -eq 1 ]; then
run_with_sampling \
"fork_bomb" \
"cd '$ROOT_DIR/fork_bomb' && ./fork_bomb" \
"$OUT_DIR/fork_bomb.csv" \
"$FORK_BOMB_SECONDS"
log "Starting fork_bomb (C-side logging)"
if command -v timeout >/dev/null 2>&1; then
timeout "$FORK_BOMB_SECONDS" sh -c "cd '$ROOT_DIR/fork_bomb' && FORK_BOMB_CSV='$OUT_DIR/fork_bomb.csv' PROC_SAMPLE_STEP='$PROC_SAMPLE_STEP' ./fork_bomb" || true
else
(cd "$ROOT_DIR/fork_bomb" && FORK_BOMB_CSV="$OUT_DIR/fork_bomb.csv" PROC_SAMPLE_STEP="$PROC_SAMPLE_STEP" ./fork_bomb) &
FB_PID=$!
sleep "$FORK_BOMB_SECONDS" || true
kill -TERM "-$FB_PID" 2>/dev/null || true
sleep 2
kill -KILL "-$FB_PID" 2>/dev/null || true
fi
else
log "Skipping fork_bomb (set ALLOW_DANGEROUS=1 to run)"
echo "timestamp,elapsed_s,load1,load5,load15,mem_total_kb,mem_available_kb,mem_used_kb,proc_count,thread_count_total,pid,cpu_pct,sys_cpu_pct,rss_kb,vsz_kb,stack_kb,heap_kb,proc_threads" > "$OUT_DIR/fork_bomb.csv"