Description
In the Linux kernel, the following vulnerability has been resolved: coresight: etm4x: fix underflow for usage of (nrseqstate - 1) According to IHI006H Embedded Trace Macrocell Architecture Specification[0], TRCSEQEVR<n> is implemented only when TRCIDR5.NUMSEQSTATE is 0b100, in which case n ranges from 0 to 2; otherwise, TRCIDR5.NUMSEQSTATE is 0b000. IOW, the number of usage in the initialisation or setting TRCSEQEVR<n> with drvdata->nrseqstate - 1 in the loop could make underflow issue when TRCIDR5.NUMSEQSTATE is 0b000. Therefore, introduce nr_seq_ctrls field and untie it from nrseqstate. As part of this introduce ETM_MAX_SEQ_TRANSITIONS macro and apply nr_seq_ctrls and above macro to TRCSEQEVR<n> relevant fields setup.
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 8d669db59f7283b838e029af29da12e505265faeaffected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 4091f2d5b26d117c992ffcce1a5df425a0daedcdaffected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < be7b2de5b9a96ae68ffa3528e0a40d63e0fd8148affected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 4f9a0f548413bf864f609c9f4bc56e3f1b3577d4affected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 1ade9a335c69fc735cb7b3f222ed35ab135540fbaffected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 5ac900f73ce1d4d8308f40752b51bc8a02b244d2affected2e1cdfe184b5202d51e0611d7a051e2bea303946 to < 1674d9bff8073bdee5dbc200f56fc3caa28d0566affected
Linux Linux
Default version status: affected
4.2affected0 to < 4.2unaffected5.15.221 to ≤ 5.15.*unaffected6.1.188 to ≤ 6.1.*unaffected6.6.157 to ≤ 6.6.*unaffected6.12.110 to ≤ 6.12.*unaffected6.18.52 to ≤ 6.18.*unaffected7.2.6 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/8d669db59f7283b838e029af29da12e505265fae ↗
- https://git.kernel.org/stable/c/4091f2d5b26d117c992ffcce1a5df425a0daedcd ↗
- https://git.kernel.org/stable/c/be7b2de5b9a96ae68ffa3528e0a40d63e0fd8148 ↗
- https://git.kernel.org/stable/c/4f9a0f548413bf864f609c9f4bc56e3f1b3577d4 ↗
- https://git.kernel.org/stable/c/1ade9a335c69fc735cb7b3f222ed35ab135540fb ↗
- https://git.kernel.org/stable/c/5ac900f73ce1d4d8308f40752b51bc8a02b244d2 ↗
- https://git.kernel.org/stable/c/1674d9bff8073bdee5dbc200f56fc3caa28d0566 ↗