aboutsummaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/flamegraph.py
diff options
context:
space:
mode:
authorChenyuan Yang <[email protected]>2024-04-30 15:44:53 +0300
committerJonathan Cameron <[email protected]>2024-05-27 09:48:56 +0100
commit5acc3f971a01be48d5ff4252d8f9cdb87998cdfb (patch)
treee5cdb90b0a2e6511471b82eb228828eb5718ed17 /tools/perf/scripts/python/flamegraph.py
parente5073e9ccfc648c6ec4bead45b6f5d8bc3b115bf (diff)
iio: Fix the sorting functionality in iio_gts_build_avail_time_table
The sorting in iio_gts_build_avail_time_table is not working as intended. It could result in an out-of-bounds access when the time is zero. Here are more details: 1. When the gts->itime_table[i].time_us is zero, e.g., the time sequence is `3, 0, 1`, the inner for-loop will not terminate and do out-of-bound writes. This is because once `times[j] > new`, the value `new` will be added in the current position and the `times[j]` will be moved to `j+1` position, which makes the if-condition always hold. Meanwhile, idx will be added one, making the loop keep running without termination and out-of-bound write. 2. If none of the gts->itime_table[i].time_us is zero, the elements will just be copied without being sorted as described in the comment "Sort times from all tables to one and remove duplicates". For more details, please refer to https://lore.kernel.org/all/[email protected]. Reported-by: Chenyuan Yang <[email protected]> Suggested-by: Matti Vaittinen <[email protected]> Fixes: 38416c28e168 ("iio: light: Add gain-time-scale helpers") Signed-off-by: Chenyuan Yang <[email protected]> Co-developed-by: Matti Vaittinen <[email protected]> Signed-off-by: Matti Vaittinen <[email protected]> Link: https://lore.kernel.org/r/d501ade8c1f7b202d34c6404eda423489cab1df5.1714480171.git.mazziesaccount@gmail.com Signed-off-by: Jonathan Cameron <[email protected]>
Diffstat (limited to 'tools/perf/scripts/python/flamegraph.py')
0 files changed, 0 insertions, 0 deletions