mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-11 12:28:41 +08:00
Tracing fixes:
- Check for NULL in kretprobe_dispatcher() NULL can now be passed in, make sure it can handle it - Clean up unneeded #endif #ifdef of the same preprocessor check in the middle of the block. - Comment clean up - Remove unneeded initialization of the "ret" variable in __trace_uprobe_create() -----BEGIN PGP SIGNATURE----- iIoEABYIADIWIQRRSw7ePDh/lE+zeZMp5XQQmuv6qgUCYrMu9hQccm9zdGVkdEBn b29kbWlzLm9yZwAKCRAp5XQQmuv6qpuZAP9gS8Xcd7nenV3i9j4lCFktWQrvQwvh wyNb9UuLqPVMUQEAkk4hzq38P2UvEOZ+v+WdJnXfOb3wpFhrxWFycz5ZVAw= =9WXA -----END PGP SIGNATURE----- Merge tag 'trace-v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace Pull tracing fixes from Steven Rostedt: - Check for NULL in kretprobe_dispatcher() NULL can now be passed in, make sure it can handle it - Clean up unneeded #endif #ifdef of the same preprocessor check in the middle of the block. - Comment clean up - Remove unneeded initialization of the "ret" variable in __trace_uprobe_create() * tag 'trace-v5.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: tracing/uprobes: Remove unwanted initialization in __trace_uprobe_create() tracefs: Fix syntax errors in comments tracing: Simplify conditional compilation code in tracing_set_tracer() tracing/kprobes: Check whether get_kretprobe() returns NULL in kretprobe_dispatcher()
This commit is contained in:
commit
fa1796a835
@ -553,7 +553,7 @@ struct dentry *tracefs_create_dir(const char *name, struct dentry *parent)
|
||||
*
|
||||
* Only one instances directory is allowed.
|
||||
*
|
||||
* The instances directory is special as it allows for mkdir and rmdir to
|
||||
* The instances directory is special as it allows for mkdir and rmdir
|
||||
* to be done by userspace. When a mkdir or rmdir is performed, the inode
|
||||
* locks are released and the methods passed in (@mkdir and @rmdir) are
|
||||
* called without locks and with the name of the directory being created
|
||||
|
@ -6424,9 +6424,7 @@ int tracing_set_tracer(struct trace_array *tr, const char *buf)
|
||||
synchronize_rcu();
|
||||
free_snapshot(tr);
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_TRACER_MAX_TRACE
|
||||
if (t->use_max_tr && !had_max_tr) {
|
||||
ret = tracing_alloc_snapshot_instance(tr);
|
||||
if (ret < 0)
|
||||
|
@ -1718,8 +1718,17 @@ static int
|
||||
kretprobe_dispatcher(struct kretprobe_instance *ri, struct pt_regs *regs)
|
||||
{
|
||||
struct kretprobe *rp = get_kretprobe(ri);
|
||||
struct trace_kprobe *tk = container_of(rp, struct trace_kprobe, rp);
|
||||
struct trace_kprobe *tk;
|
||||
|
||||
/*
|
||||
* There is a small chance that get_kretprobe(ri) returns NULL when
|
||||
* the kretprobe is unregister on another CPU between kretprobe's
|
||||
* trampoline_handler and this function.
|
||||
*/
|
||||
if (unlikely(!rp))
|
||||
return 0;
|
||||
|
||||
tk = container_of(rp, struct trace_kprobe, rp);
|
||||
raw_cpu_inc(*tk->nhit);
|
||||
|
||||
if (trace_probe_test_flag(&tk->tp, TP_FLAG_TRACE))
|
||||
|
@ -546,7 +546,6 @@ static int __trace_uprobe_create(int argc, const char **argv)
|
||||
bool is_return = false;
|
||||
int i, ret;
|
||||
|
||||
ret = 0;
|
||||
ref_ctr_offset = 0;
|
||||
|
||||
switch (argv[0][0]) {
|
||||
|
Loading…
Reference in New Issue
Block a user