⬢ DragonFlyBSD Kernel Audit
DF-5229 / arith.log
← back to finding ↓ download raw
== exhaustive ds in [1, 65536] (full mod-4096 cycle, header fw, N=30) ==
  header path: overrun bytes: min=512 max=512 ; vulnerable sizes: 65472/65536 (99.90%)
  safe residues (ds%4096): [4089, 4090, 4091, 4092]   (expect [4089..4092]: True)
== control: headerless path (uvd_v4_2.c:49 +0 / ALIGN(ds+4)) ==
  overrun sizes: 0/65536 (expect 0)
== shipping firmware (decoded from in-tree bonaire_uvd.bin.uu) ==
  datasize=232752 (v1.64 fw -> N=30): bo_size=2236416 span=2236928 overrun=512 bytes
  datasize=232752 (N=10): bo_size=1212416 span=1212928 overrun=512 bytes
  last window tail = gpu_addr + 0x222200 vs bo end gpu_addr + 0x222000
== N-independence (SESSION*N cancels) ==
  overhang independent of max_handles: True
== fix validation: span == bo_size for every ds in [0, 0x2FFFF] ==
  post-fix span == bo_size (header path): True
  post-fix span <= bo_size (headerless path): True
  shipping fw post-fix: span=2236416 == bo_size=2236416: True