msm: rtb: Fix buffer corruption issue
Consider the case of a nentries==8 and 3 cpus.
Numbers in parenthesis are the equivalent location in the circular buffer.
CPU: Index0: Index1: Index2: Index3:
0 0 3 6 9(1)
1 1 4 7 10(2)
2 2 5 8(0)
The current design is only appropriate for the case where
nentries % nrcpus == 0.
Fix this issue by incrementing the index by (nentries % nrcpus)
each time circular buffer wraps around.
CPU: Index0: Index1: Index2:
0 0 3 6+2==8(0)
1 1 4 7+2==9(1)
2 2 5 8+2==10(2)
Change-Id: I4f96eb4c971cc18357e145dabcf4272e466dcda2
Signed-off-by:
Patrick Daly <pdaly@codeaurora.org>
Loading
Please register or sign in to comment