DragonFlyBSD Kernel Audit
DF-2920 / run.ufs.log
← back to finding ↓ download raw
=== DF-2920: beyond-EOF fault behavior on /mnt/ufstest/df2920.ufs.bin ===
S0: pread() beyond EOF
  pread @70000 returned 0 (errno 0) -- EOF enforced for read()
S1: fresh mmap created AFTER truncate
  (file size 66767, probe offsets 70000 < in-buffer, 200000 > object)
  read @70000 (page kept for last buffer)    : value 0x00 (zero)
  read @200000 (page beyond object size)     : SIGBUS
  read @66800 (past EOF, inside EOF page)    : value 0x00 (zero)
S2: pre-existing mapping across truncate
  read @70000 BEFORE truncate                : value 0x5a (PRE-TRUNCATE PATTERN!)
  read @70000 AFTER truncate                 : value 0x00 (zero)
S3: WRITE beyond EOF via fresh mmap after truncate
  write @70000 : SUCCEEDED (no SIGBUS!)
  after extend, pread @70000: n=1 val=0x00 (zero (extend zero-fill covered it))
S4: strict race window (10 s): pattern@70000 observed with fstat-verified size < 70000
  cycles=39781 reader_iters=409486 fstat_small=3110 confirm-zero=3105 confirm-SIGBUS=0 WINDOW-HITS(pattern twice while small)=0
RC=0