diff options
| author | Edward Adam Davis <[email protected]> | 2025-06-24 06:38:46 +0000 |
|---|---|---|
| committer | Steven Rostedt (Google) <[email protected]> | 2025-06-27 19:51:36 +0000 |
| commit | 6921d1e07cb5eddec830801087b419194fde0803 (patch) | |
| tree | e4b0fed513f8e4edbfa80c7559c3870c4e3624d4 /lib/crypto/utils.c | |
| parent | Linux 6.16-rc3 (diff) | |
| download | kernel-6921d1e07cb5eddec830801087b419194fde0803.tar.gz kernel-6921d1e07cb5eddec830801087b419194fde0803.zip | |
tracing: Fix filter logic error
If the processing of the tr->events loop fails, the filter that has been
added to filter_head will be released twice in free_filter_list(&head->rcu)
and __free_filter(filter).
After adding the filter of tr->events, add the filter to the filter_head
process to avoid triggering uaf.
Link: https://lore.kernel.org/[email protected]
Fixes: a9d0aab5eb33 ("tracing: Fix regression of filter waiting a long time on RCU synchronization")
Reported-by: [email protected]
Closes: https://syzkaller.appspot.com/bug?extid=daba72c4af9915e9c894
Tested-by: [email protected]
Acked-by: Masami Hiramatsu (Google) <[email protected]>
Signed-off-by: Edward Adam Davis <[email protected]>
Signed-off-by: Steven Rostedt (Google) <[email protected]>
Diffstat (limited to 'lib/crypto/utils.c')
0 files changed, 0 insertions, 0 deletions
