β¬’ DragonFlyBSD Kernel Audit
← triage Β· dashboard
DF-5107

SCDC channel-lock status bit macros use '<' comparison instead of '<<' shift: SCDC_CH0_LOCK==0 (channel-0 lock undetectable) and SCDC_CH_LOCK_MASK aliases SCDC_CLOCK_DETECT

Summary

The header defines (1 < 3)/(1 < 2)/(1 < 1) - all evaluate to 1, 1, 0, so the mask collapses to 0x1 aliasing CLOCK_DETECT. Preprocessor-proven on the guest compiler (spec: 8/4/2/0xE). Zero in-tree consumers today (amdgpu DAL uses private constants) - latent logic defect for the first future consumer. Shift-operator fix.

Discussion (0)

No comments yet.

PoC verification

Evidence pack

findings/poc/DF-5107 Β· 1 files
FileTypeDescriptionSize
verdict.json file 907 B view raw

Fix verification

not_testable
baseline no→ patch + rebuild →patched clean
per-fix-DF-5107

Confirmed kernel references

Detail

Evidence (decisive lines)

compile-time expansion proof in finding markdown

Verified recommended fix

replace < with << in the three bit defines

Verdict

untested (no in-tree consumers; preprocessor-proven defect)