tracing: Fix wrong uprobe variable in iterator
uprobe_perf_open() processes a list of probes, but due to a missing setting of the uprobe to be processed, the loop processes the head probe instead of the added probes. -----BEGIN PGP SIGNATURE----- iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCYZ5VIhQccm9zdGVkdEBn b29kbWlzLm9yZwAKCRAp5XQQmuv6qsI4AP4yOJ+r/2b7cTWOpnZcs5grnFfKD46t LRXXOyWc9CNfNwEA/pXFW3IJ0hCKuMaHAJbPFuyIKufGBJxPEae0htc0SgI= =HDiu -----END PGP SIGNATURE----- Merge tag 'trace-v5.16-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace Pull tracing fix from Steven Rostedt: "Fix wrong uprobe variable in iterator uprobe_perf_open() processes a list of probes, but due to a missing setting of the uprobe to be processed, the loop processes the head probe instead of the added probes" * tag 'trace-v5.16-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: tracing/uprobe: Fix uprobe_perf_open probes iteration
This commit is contained in:
commit
29889216be
1 changed files with 1 additions and 0 deletions
|
|
@ -1313,6 +1313,7 @@ static int uprobe_perf_open(struct trace_event_call *call,
|
|||
return 0;
|
||||
|
||||
list_for_each_entry(pos, trace_probe_probe_list(tp), list) {
|
||||
tu = container_of(pos, struct trace_uprobe, tp);
|
||||
err = uprobe_apply(tu->inode, tu->offset, &tu->consumer, true);
|
||||
if (err) {
|
||||
uprobe_perf_close(call, event);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue