Loading kernel/trace/trace.c +4 −96 Original line number Diff line number Diff line Loading @@ -817,7 +817,6 @@ static const char *trace_options[] = { "irq-info", "markers", "function-trace", "print-tgid", NULL }; Loading Loading @@ -1285,7 +1284,6 @@ void tracing_reset_all_online_cpus(void) #define SAVED_CMDLINES_DEFAULT 128 #define NO_CMDLINE_MAP UINT_MAX static unsigned saved_tgids[SAVED_CMDLINES_DEFAULT]; static arch_spinlock_t trace_cmdline_lock = __ARCH_SPIN_LOCK_UNLOCKED; struct saved_cmdlines_buffer { unsigned map_pid_to_cmdline[PID_MAX_DEFAULT+1]; Loading Loading @@ -1524,7 +1522,7 @@ static int trace_save_cmdline(struct task_struct *tsk) } set_cmdline(idx, tsk->comm); saved_tgids[idx] = tsk->tgid; arch_spin_unlock(&trace_cmdline_lock); return 1; Loading Loading @@ -1567,25 +1565,6 @@ void trace_find_cmdline(int pid, char comm[]) preempt_enable(); } int trace_find_tgid(int pid) { unsigned map; int tgid; preempt_disable(); arch_spin_lock(&trace_cmdline_lock); map = savedcmd->map_pid_to_cmdline[pid]; if (map != NO_CMDLINE_MAP) tgid = saved_tgids[map]; else tgid = -1; arch_spin_unlock(&trace_cmdline_lock); preempt_enable(); return tgid; } void tracing_record_cmdline(struct task_struct *tsk) { if (atomic_read(&trace_record_cmdline_disabled) || !tracing_is_on()) Loading Loading @@ -2564,13 +2543,6 @@ static void print_func_help_header(struct trace_buffer *buf, struct seq_file *m) seq_puts(m, "# | | | | |\n"); } static void print_func_help_header_tgid(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); seq_puts(m, "# TASK-PID TGID CPU# TIMESTAMP FUNCTION\n"); seq_puts(m, "# | | | | | |\n"); } static void print_func_help_header_irq(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); Loading @@ -2583,18 +2555,6 @@ static void print_func_help_header_irq(struct trace_buffer *buf, struct seq_file seq_puts(m, "# | | | |||| | |\n"); } static void print_func_help_header_irq_tgid(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); seq_puts(m, "# _-----=> irqs-off\n"); seq_puts(m, "# / _----=> need-resched\n"); seq_puts(m, "# | / _---=> hardirq/softirq\n"); seq_puts(m, "# || / _--=> preempt-depth\n"); seq_puts(m, "# ||| / delay\n"); seq_puts(m, "# TASK-PID TGID CPU# |||| TIMESTAMP FUNCTION\n"); seq_puts(m, "# | | | | |||| | |\n"); } void print_trace_header(struct seq_file *m, struct trace_iterator *iter) { Loading Loading @@ -2895,13 +2855,8 @@ void trace_default_header(struct seq_file *m) } else { if (!(trace_flags & TRACE_ITER_VERBOSE)) { if (trace_flags & TRACE_ITER_IRQ_INFO) if (trace_flags & TRACE_ITER_TGID) print_func_help_header_irq_tgid(iter->trace_buffer, m); else print_func_help_header_irq(iter->trace_buffer, m); else if (trace_flags & TRACE_ITER_TGID) print_func_help_header_tgid(iter->trace_buffer, m); print_func_help_header_irq(iter->trace_buffer, m); else print_func_help_header(iter->trace_buffer, m); } Loading Loading @@ -3948,50 +3903,6 @@ static const struct file_operations tracing_saved_cmdlines_size_fops = { .write = tracing_saved_cmdlines_size_write, }; static ssize_t tracing_saved_tgids_read(struct file *file, char __user *ubuf, size_t cnt, loff_t *ppos) { char *file_buf; char *buf; int len = 0; int pid; int i; file_buf = kmalloc(SAVED_CMDLINES_DEFAULT*(16+1+16), GFP_KERNEL); if (!file_buf) return -ENOMEM; buf = file_buf; for (i = 0; i < SAVED_CMDLINES_DEFAULT; i++) { int tgid; int r; pid = savedcmd->map_cmdline_to_pid[i]; if (pid == -1 || pid == NO_CMDLINE_MAP) continue; tgid = trace_find_tgid(pid); r = sprintf(buf, "%d %d\n", pid, tgid); buf += r; len += r; } len = simple_read_from_buffer(ubuf, cnt, ppos, file_buf, len); kfree(file_buf); return len; } static const struct file_operations tracing_saved_tgids_fops = { .open = tracing_open_generic, .read = tracing_saved_tgids_read, .llseek = generic_file_llseek, }; static ssize_t tracing_set_trace_read(struct file *filp, char __user *ubuf, size_t cnt, loff_t *ppos) Loading Loading @@ -6622,9 +6533,6 @@ init_tracer_debugfs(struct trace_array *tr, struct dentry *d_tracer) trace_create_file("trace_marker", 0220, d_tracer, tr, &tracing_mark_fops); trace_create_file("saved_tgids", 0444, d_tracer, tr, &tracing_saved_tgids_fops); trace_create_file("trace_clock", 0644, d_tracer, tr, &trace_clock_fops); Loading kernel/trace/trace.h +0 −2 Original line number Diff line number Diff line Loading @@ -659,7 +659,6 @@ static inline void __trace_stack(struct trace_array *tr, unsigned long flags, extern cycle_t ftrace_now(int cpu); extern void trace_find_cmdline(int pid, char comm[]); extern int trace_find_tgid(int pid); #ifdef CONFIG_DYNAMIC_FTRACE extern unsigned long ftrace_update_tot_cnt; Loading Loading @@ -940,7 +939,6 @@ enum trace_iterator_flags { TRACE_ITER_IRQ_INFO = 0x800000, TRACE_ITER_MARKERS = 0x1000000, TRACE_ITER_FUNCTION = 0x2000000, TRACE_ITER_TGID = 0x4000000, }; /* Loading kernel/trace/trace_output.c +2 −16 Original line number Diff line number Diff line Loading @@ -565,25 +565,11 @@ int trace_print_context(struct trace_iterator *iter) unsigned long secs, usec_rem; char comm[TASK_COMM_LEN]; int ret; int tgid; trace_find_cmdline(entry->pid, comm); ret = trace_seq_printf(s, "%16s-%-5d ", comm, entry->pid); if (!ret) return 0; if (trace_flags & TRACE_ITER_TGID) { tgid = trace_find_tgid(entry->pid); if (tgid < 0) ret = trace_seq_puts(s, "(-----) "); else ret = trace_seq_printf(s, "(%5d) ", tgid); if (!ret) return 0; } ret = trace_seq_printf(s, "[%03d] ", iter->cpu); ret = trace_seq_printf(s, "%16s-%-5d [%03d] ", comm, entry->pid, iter->cpu); if (!ret) return 0; Loading Loading
kernel/trace/trace.c +4 −96 Original line number Diff line number Diff line Loading @@ -817,7 +817,6 @@ static const char *trace_options[] = { "irq-info", "markers", "function-trace", "print-tgid", NULL }; Loading Loading @@ -1285,7 +1284,6 @@ void tracing_reset_all_online_cpus(void) #define SAVED_CMDLINES_DEFAULT 128 #define NO_CMDLINE_MAP UINT_MAX static unsigned saved_tgids[SAVED_CMDLINES_DEFAULT]; static arch_spinlock_t trace_cmdline_lock = __ARCH_SPIN_LOCK_UNLOCKED; struct saved_cmdlines_buffer { unsigned map_pid_to_cmdline[PID_MAX_DEFAULT+1]; Loading Loading @@ -1524,7 +1522,7 @@ static int trace_save_cmdline(struct task_struct *tsk) } set_cmdline(idx, tsk->comm); saved_tgids[idx] = tsk->tgid; arch_spin_unlock(&trace_cmdline_lock); return 1; Loading Loading @@ -1567,25 +1565,6 @@ void trace_find_cmdline(int pid, char comm[]) preempt_enable(); } int trace_find_tgid(int pid) { unsigned map; int tgid; preempt_disable(); arch_spin_lock(&trace_cmdline_lock); map = savedcmd->map_pid_to_cmdline[pid]; if (map != NO_CMDLINE_MAP) tgid = saved_tgids[map]; else tgid = -1; arch_spin_unlock(&trace_cmdline_lock); preempt_enable(); return tgid; } void tracing_record_cmdline(struct task_struct *tsk) { if (atomic_read(&trace_record_cmdline_disabled) || !tracing_is_on()) Loading Loading @@ -2564,13 +2543,6 @@ static void print_func_help_header(struct trace_buffer *buf, struct seq_file *m) seq_puts(m, "# | | | | |\n"); } static void print_func_help_header_tgid(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); seq_puts(m, "# TASK-PID TGID CPU# TIMESTAMP FUNCTION\n"); seq_puts(m, "# | | | | | |\n"); } static void print_func_help_header_irq(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); Loading @@ -2583,18 +2555,6 @@ static void print_func_help_header_irq(struct trace_buffer *buf, struct seq_file seq_puts(m, "# | | | |||| | |\n"); } static void print_func_help_header_irq_tgid(struct trace_buffer *buf, struct seq_file *m) { print_event_info(buf, m); seq_puts(m, "# _-----=> irqs-off\n"); seq_puts(m, "# / _----=> need-resched\n"); seq_puts(m, "# | / _---=> hardirq/softirq\n"); seq_puts(m, "# || / _--=> preempt-depth\n"); seq_puts(m, "# ||| / delay\n"); seq_puts(m, "# TASK-PID TGID CPU# |||| TIMESTAMP FUNCTION\n"); seq_puts(m, "# | | | | |||| | |\n"); } void print_trace_header(struct seq_file *m, struct trace_iterator *iter) { Loading Loading @@ -2895,13 +2855,8 @@ void trace_default_header(struct seq_file *m) } else { if (!(trace_flags & TRACE_ITER_VERBOSE)) { if (trace_flags & TRACE_ITER_IRQ_INFO) if (trace_flags & TRACE_ITER_TGID) print_func_help_header_irq_tgid(iter->trace_buffer, m); else print_func_help_header_irq(iter->trace_buffer, m); else if (trace_flags & TRACE_ITER_TGID) print_func_help_header_tgid(iter->trace_buffer, m); print_func_help_header_irq(iter->trace_buffer, m); else print_func_help_header(iter->trace_buffer, m); } Loading Loading @@ -3948,50 +3903,6 @@ static const struct file_operations tracing_saved_cmdlines_size_fops = { .write = tracing_saved_cmdlines_size_write, }; static ssize_t tracing_saved_tgids_read(struct file *file, char __user *ubuf, size_t cnt, loff_t *ppos) { char *file_buf; char *buf; int len = 0; int pid; int i; file_buf = kmalloc(SAVED_CMDLINES_DEFAULT*(16+1+16), GFP_KERNEL); if (!file_buf) return -ENOMEM; buf = file_buf; for (i = 0; i < SAVED_CMDLINES_DEFAULT; i++) { int tgid; int r; pid = savedcmd->map_cmdline_to_pid[i]; if (pid == -1 || pid == NO_CMDLINE_MAP) continue; tgid = trace_find_tgid(pid); r = sprintf(buf, "%d %d\n", pid, tgid); buf += r; len += r; } len = simple_read_from_buffer(ubuf, cnt, ppos, file_buf, len); kfree(file_buf); return len; } static const struct file_operations tracing_saved_tgids_fops = { .open = tracing_open_generic, .read = tracing_saved_tgids_read, .llseek = generic_file_llseek, }; static ssize_t tracing_set_trace_read(struct file *filp, char __user *ubuf, size_t cnt, loff_t *ppos) Loading Loading @@ -6622,9 +6533,6 @@ init_tracer_debugfs(struct trace_array *tr, struct dentry *d_tracer) trace_create_file("trace_marker", 0220, d_tracer, tr, &tracing_mark_fops); trace_create_file("saved_tgids", 0444, d_tracer, tr, &tracing_saved_tgids_fops); trace_create_file("trace_clock", 0644, d_tracer, tr, &trace_clock_fops); Loading
kernel/trace/trace.h +0 −2 Original line number Diff line number Diff line Loading @@ -659,7 +659,6 @@ static inline void __trace_stack(struct trace_array *tr, unsigned long flags, extern cycle_t ftrace_now(int cpu); extern void trace_find_cmdline(int pid, char comm[]); extern int trace_find_tgid(int pid); #ifdef CONFIG_DYNAMIC_FTRACE extern unsigned long ftrace_update_tot_cnt; Loading Loading @@ -940,7 +939,6 @@ enum trace_iterator_flags { TRACE_ITER_IRQ_INFO = 0x800000, TRACE_ITER_MARKERS = 0x1000000, TRACE_ITER_FUNCTION = 0x2000000, TRACE_ITER_TGID = 0x4000000, }; /* Loading
kernel/trace/trace_output.c +2 −16 Original line number Diff line number Diff line Loading @@ -565,25 +565,11 @@ int trace_print_context(struct trace_iterator *iter) unsigned long secs, usec_rem; char comm[TASK_COMM_LEN]; int ret; int tgid; trace_find_cmdline(entry->pid, comm); ret = trace_seq_printf(s, "%16s-%-5d ", comm, entry->pid); if (!ret) return 0; if (trace_flags & TRACE_ITER_TGID) { tgid = trace_find_tgid(entry->pid); if (tgid < 0) ret = trace_seq_puts(s, "(-----) "); else ret = trace_seq_printf(s, "(%5d) ", tgid); if (!ret) return 0; } ret = trace_seq_printf(s, "[%03d] ", iter->cpu); ret = trace_seq_printf(s, "%16s-%-5d [%03d] ", comm, entry->pid, iter->cpu); if (!ret) return 0; Loading