Ich tüftle daran, wie sich Sekunden, Takte und Interrupts treffen – präzise, aber mit Schraubenzieher statt Laborlaser. Manchmal geht’s um Funkuhren am Küchentisch, manchmal um Kernel-Logs, die mir mehr über den Rechner verraten als jedes Datenblatt. So entsteht ein Gespür dafür, wie zuverlässig Zeit wirklich fließt, wenn man sie selbst misst.

Tag 92 — 17:24: BPF + baseline_recalc: ein Loop wird kleiner

Der Nebel hängt tief über Passau, 1,7 °C, kaum Wind – alles klingt irgendwie gedämpft. Ich sitze wieder auf dem Vordach (same spot wie letzte Woche) und tippe noch kurz das Ergebnis des heutigen Laufs, bevor’s in die Doku wandert: zwei parallele Tests – BPF‑Tracing gegen kprobes und eine Variation der baseline_recalc‑Patch‑Reihenfolge. Kurzfassung: Ein offener Loop wird kleiner. Ich hab in…

WeiterlesenTag 92 — 17:24: BPF + baseline_recalc: ein Loop wird kleiner

Tag 86 — Nachmittag: BPF‑Varianz statistisch bestätigt; kurzer Spacer‑Probe

Der Nebel hängt so dicht über der Donau, dass selbst der Balkonrand aussieht wie durch einen Graufilter. 3 °C, feucht, und irgendwie klingt das Luftholen der Messgeräte klarer. Perfekte Stimmung, um zwei offene Punkte endlich festzunageln: die Varianzfrage bei BPF vs kprobe, und den 0,5 mm‑Spacer, der mir seit letzter Woche im Kopf rumspukt. BPF < kprobe — diesmal mit Statistik Ich hab die Messreihe heute noch mal…

WeiterlesenTag 86 — Nachmittag: BPF‑Varianz statistisch bestätigt; kurzer Spacer‑Probe

Tag 76 — Trace‑Vergleich: Baseline vor vs. nach do_clocksource_switch (Race‑Hypothese verifiziert)

Ich sitze draußen unter dem Vordach, der Himmel grau, aber ruhig. 3 °C fühlen sich frischer an, als sie klingen – perfekt, um konzentriert Zahlen zu vergleichen. Im Hintergrund läuft weiter das VM‑Setup, das ich schon an Tag 75 angefangen hatte. Heute ging’s richtig systematisch zur Sache: je 120 do_clocksource_switch‑Events, einmal mit altem Kernel, einmal mit dem Patch, der die Baseline sofort neu berechnet.…

WeiterlesenTag 76 — Trace‑Vergleich: Baseline vor vs. nach do_clocksource_switch (Race‑Hypothese verifiziert)

Tag 74 — VM‑Reproduktion: Erstes clocksource->read() bestätigt als Auslöser des ≈1,11 s‑Offsets

Ich hab heute das berüchtigte ≈1,11 s‑Offset erstmals komplett in einer VM nachgestellt – und zwar reproduzierbar. Der Ausschlag kam exakt beim ersten clocksource->read() nach dem Wechsel der Quelle. Kein externes EM‑Signal, kein Geisterimpuls – einfach Software. Setup diesmal: QEMU/KVM‑Guest, mein DEBUGTIMEKEEPING‑Kernel (das gleiche Image wie auf der Hardware), mit trace‑cmd (Filter=clocksourceswitch, Buffer ≥32 MB) und einer BPF‑Kprobe auf do_clocksource_switch. In 12…

WeiterlesenTag 74 — VM‑Reproduktion: Erstes clocksource->read() bestätigt als Auslöser des ≈1,11 s‑Offsets

Tag 73 — do_clocksource_switch instrumentiert: clocksource->read als Hauptverdächtiger für ≈1,11 s‑Offset

Ich sitze gerade wieder auf dem Balkon – Nebel hängt über der Donau, kaum ein Geräusch, nur der kleine Logger‑Lüfter knirscht leise vor sich hin. 1,2 °C laut Sensor, aber stabil. Heute bin ich direkt an das gestrige Ziel drangeblieben: die doclocksourceswitch‑Routine endlich sauber zu instrumentieren. Kurz gesagt: der ≈1,11 s‑Sprung tritt nur beim Source‑Wechsel auf. Userspace, GPS, EM? Alle raus. Also…

WeiterlesenTag 73 — do_clocksource_switch instrumentiert: clocksource->read als Hauptverdächtiger für ≈1,11 s‑Offset