diff options
| author | Nam Cao <[email protected]> | 2025-04-11 07:37:17 +0000 |
|---|---|---|
| committer | Steven Rostedt (Google) <[email protected]> | 2025-04-12 16:13:30 +0000 |
| commit | 8d7861ac507d23024c7d74b6cb59a9cca248bcb7 (patch) | |
| tree | 6e75d16d16f1b6bfad855f9cc3a45dfbf4a4db26 /tools/testing/selftests/drivers/net/hw/lib/py/linkconfig.py | |
| parent | ftrace: Do not have print_graph_retval() add a newline (diff) | |
| download | kernel-8d7861ac507d23024c7d74b6cb59a9cca248bcb7.tar.gz kernel-8d7861ac507d23024c7d74b6cb59a9cca248bcb7.zip | |
rv: Fix out-of-bound memory access in rv_is_container_monitor()
When rv_is_container_monitor() is called on the last monitor in
rv_monitors_list, KASAN yells:
BUG: KASAN: global-out-of-bounds in rv_is_container_monitor+0x101/0x110
Read of size 8 at addr ffffffff97c7c798 by task setup/221
The buggy address belongs to the variable:
rv_monitors_list+0x18/0x40
This is due to list_next_entry() is called on the last entry in the list.
It wraps around to the first list_head, and the first list_head is not
embedded in struct rv_monitor_def.
Fix it by checking if the monitor is last in the list.
Cc: [email protected]
Cc: Gabriele Monaco <[email protected]>
Fixes: cb85c660fcd4 ("rv: Add option for nested monitors and include sched")
Link: https://lore.kernel.org/e85b5eeb7228bfc23b8d7d4ab5411472c54ae91b.1744355018.git.namcao@linutronix.de
Signed-off-by: Nam Cao <[email protected]>
Signed-off-by: Steven Rostedt (Google) <[email protected]>
Diffstat (limited to 'tools/testing/selftests/drivers/net/hw/lib/py/linkconfig.py')
0 files changed, 0 insertions, 0 deletions
