aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/ftrace.h
diff options
context:
space:
mode:
authorSteven Rostedt <srostedt@redhat.com>2011-07-05 14:32:51 -0400
committerSteven Rostedt <rostedt@goodmis.org>2011-07-07 11:22:29 -0400
commit40ee4dffff061399eb9358e0c8fcfbaf8de4c8fe (patch)
tree88b61ccc46994332d6f59cc1e6b2848fffc9a990 /include/linux/ftrace.h
parenttracing: Fix bug when reading system filters on module removal (diff)
downloadlinux-dev-40ee4dffff061399eb9358e0c8fcfbaf8de4c8fe.tar.xz
linux-dev-40ee4dffff061399eb9358e0c8fcfbaf8de4c8fe.zip
tracing: Have "enable" file use refcounts like the "filter" file
The "enable" file for the event system can be removed when a module is unloaded and the event system only has events from that module. As the event system nr_events count goes to zero, it may be freed if its ref_count is also set to zero. Like the "filter" file, the "enable" file may be opened by a task and referenced later, after a module has been unloaded and the events for that event system have been removed. Although the "filter" file referenced the event system structure, the "enable" file only references a pointer to the event system name. Since the name is freed when the event system is removed, it is possible that an access to the "enable" file may reference a freed pointer. Update the "enable" file to use the subsystem_open() routine that the "filter" file uses, to keep a reference to the event system structure while the "enable" file is opened. Cc: <stable@kernel.org> Reported-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'include/linux/ftrace.h')
0 files changed, 0 insertions, 0 deletions