⬢ DragonFlyBSD Kernel Audit
DF-2250 / run.log
← back to finding ↓ download raw
=== uname ===
DragonFly dfbsd 6.5-DEVELOPMENT DragonFly 6.5-DEVELOPMENT #0: Sat Oct 17 15:01:40 UTC 2026     root@dfbsd:/usr/obj/usr/src/sys/X86_64_GENERIC  x86_64
=== SMP race runs (6 threads x 1e6 draws) ===
--- run 1 ---
debug.rng_race: 0 -> 0
4294616
--- run 2 ---
debug.rng_race: 0 -> 0
4028727
--- run 3 ---
debug.rng_race: 0 -> 0
4423068
=== CONTROL runs (1 thread pinned, 6e6 draws) ===
--- control run 1 ---
debug.rng_race: 0 -> 0
0
--- control run 2 ---
debug.rng_race: 0 -> 0
0
=== DF-2251 prediction demo ===
debug.rng_pred: 0 -> 0
=== console capture ===
RNGRACE: dup value=0x0000000000000424 A[cpu=0 idx=906032] B[cpu=5 idx=767962]
RNGRACE: dup value=0x0000000000000424 A[cpu=5 idx=767962] B[cpu=4 idx=934872]
RNGRACE: dup value=0x0000000000000424 A[cpu=4 idx=934872] B[cpu=3 idx=899452]
RNGRACE: dup value=0x0000000000000424 A[cpu=3 idx=899452] B[cpu=1 idx=939566]
RNGRACE: dup value=0x0000000000000424 A[cpu=1 idx=939566] B[cpu=2 idx=929644]
RNGRACE: dup value=0x0000000000000a27 A[cpu=4 idx=394674] B[cpu=1 idx=402858]
RNGRACE: dup value=0x00000000000025f2 A[cpu=4 idx=779594] B[cpu=3 idx=753985]
RNGRACE: dup value=0x00000000000025f2 A[cpu=3 idx=753985] B[cpu=1 idx=768401]
RNGRACE: mode=SMP threads=6 draws/thread=1000000 total=6000000 elapsed=318ms
RNGRACE: duplicates=4294616 (rate per 1e6 draws: 715769.33) same-cpu-dups=49402
RNGRACE: dup value=0x0000000000000746 A[cpu=0 idx=557456] B[cpu=2 idx=859756]
RNGRACE: dup value=0x0000000000000826 A[cpu=4 idx=88580] B[cpu=2 idx=86818]
RNGRACE: dup value=0x0000000000000826 A[cpu=2 idx=86818] B[cpu=3 idx=75298]
RNGRACE: dup value=0x0000000000000f2e A[cpu=1 idx=845651] B[cpu=3 idx=814747]
RNGRACE: dup value=0x0000000000000f2e A[cpu=3 idx=814747] B[cpu=4 idx=979701]
RNGRACE: dup value=0x0000000000000f2e A[cpu=4 idx=979701] B[cpu=5 idx=867643]
RNGRACE: dup value=0x0000000000000f2e A[cpu=5 idx=867643] B[cpu=2 idx=836593]
RNGRACE: dup value=0x0000000000001ebe A[cpu=2 idx=247790] B[cpu=4 idx=233456]
RNGRACE: mode=SMP threads=6 draws/thread=1000000 total=6000000 elapsed=75ms
RNGRACE: duplicates=4028727 (rate per 1e6 draws: 671454.50) same-cpu-dups=169174
RNGRACE: dup value=0x0000000000000832 A[cpu=5 idx=22575] B[cpu=3 idx=20590]
RNGRACE: dup value=0x0000000000000832 A[cpu=3 idx=20590] B[cpu=4 idx=20451]
RNGRACE: dup value=0x0000000000000832 A[cpu=4 idx=20451] B[cpu=3 idx=20442]
RNGRACE: dup value=0x0000000000000832 A[cpu=3 idx=20442] B[cpu=1 idx=38362]
RNGRACE: dup value=0x0000000000000832 A[cpu=1 idx=38362] B[cpu=1 idx=38482]
RNGRACE: dup value=0x0000000000000832 A[cpu=1 idx=38482] B[cpu=0 idx=20418]
RNGRACE: dup value=0x0000000000000832 A[cpu=0 idx=20418] B[cpu=1 idx=38749]
RNGRACE: dup value=0x0000000000001542 A[cpu=5 idx=168137] B[cpu=3 idx=209345]
RNGRACE: mode=SMP threads=6 draws/thread=1000000 total=6000000 elapsed=55ms
RNGRACE: duplicates=4423068 (rate per 1e6 draws: 737178.00) same-cpu-dups=183167
RNGRACE: mode=CONTROL(1 thread pinned) threads=1 draws/thread=6000000 total=6000000 elapsed=48ms
RNGRACE: duplicates=0 (rate per 1e6 draws: 0.00) same-cpu-dups=0
RNGRACE: control note: serial MINSTD chain never repeats within its 2^31-2 period; expected dups = 0
RNGRACE: mode=CONTROL(1 thread pinned) threads=1 draws/thread=6000000 total=6000000 elapsed=49ms
RNGRACE: duplicates=0 (rate per 1e6 draws: 0.00) same-cpu-dups=0
RNGRACE: control note: serial MINSTD chain never repeats within its 2^31-2 period; expected dups = 0
RNGPRED: attempt 1 SUCCESS on real krandom():
RNGPRED: v0..v7 = 207482415 1790989824 2035175616 077048696 024794531 109854999 1644515420 1256127050
RNGPRED: forward  x[n+1]=16807*x mod (2^31-1) from v0 reproduces v1..v7 exactly
RNGPRED: backward x[n-1]=1407677000*x mod (2^31-1) from v7 recovers v6..v0 exactly
RNGPRED: predicted NEXT 1000 real krandom() draws: 1000/1000 exact matches
RNGPRED: i_gen consumer: g1=742485420 g2=998706240 state-recovered=1484970838 next-prediction-match=YES
RNGPRED: chap-diff: found=YES recovered-state=1067768578 matches-real-state=YES (search <= 2^31 offline, ~seconds on one CPU)
RNGPRED: RESULT: single observed output => full state (past via inverse, future via multiplier) for the REAL krandom()