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)
PoC verification
Evidence pack
findings/poc/DF-5107 Β· 1 files| File | Type | Description | Size | |
|---|---|---|---|---|
| verdict.json | file | 907 B | view raw |
Fix verification
not_testablebaseline 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)
No comments yet.