Skip to content

Commit 7ec901b

Browse files
committed
Merge tag 'trace-v5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace
Pull tracing fix from Steven Rostedt: "Fix probes written to the set_ftrace_filter file Now that there's a library that accesses the tracefs file system (libtracefs), the way the files are interacted with is slightly different than the command line. For instance, the write() system call is used directly instead of an echo. This exposes some old bugs. If a probe is written to "set_ftrace_filter" without any white space after it, it will be ignored. This is because the write expects that a string written to it that does not end with white spaces thinks there is more to come. But if the file is closed, the release function needs to finish it. The "set_ftrace_filter" release function handles the filter part of the "set_ftrace_filter" file, but did not handle the probe part" * tag 'trace-v5.13-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: ftrace: Handle commands when closing set_ftrace_filter file
2 parents 164e64a + 8c9af47 commit 7ec901b

File tree

1 file changed

+4
-1
lines changed

1 file changed

+4
-1
lines changed

kernel/trace/ftrace.c

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5624,7 +5624,10 @@ int ftrace_regex_release(struct inode *inode, struct file *file)
56245624

56255625
parser = &iter->parser;
56265626
if (trace_parser_loaded(parser)) {
5627-
ftrace_match_records(iter->hash, parser->buffer, parser->idx);
5627+
int enable = !(iter->flags & FTRACE_ITER_NOTRACE);
5628+
5629+
ftrace_process_regex(iter, parser->buffer,
5630+
parser->idx, enable);
56285631
}
56295632

56305633
trace_parser_put(parser);

0 commit comments

Comments
 (0)