diff options
| author | Peter Zijlstra <peterz@infradead.org> | 2017-09-22 12:23:31 -0400 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2017-09-29 05:02:45 -0400 |
| commit | 5f6ad26ea353fdf3dad2328052cbee49e0b9c5b4 (patch) | |
| tree | 5c979d6aa41ba415d71022bfcb364720474684fb /kernel/trace | |
| parent | efb40f588b4370ffaeffafbd50f6ff213d954254 (diff) | |
sched/tracing: Use common task-state helpers
Remove yet another task-state char instance.
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'kernel/trace')
| -rw-r--r-- | kernel/trace/trace_output.c | 21 | ||||
| -rw-r--r-- | kernel/trace/trace_sched_wakeup.c | 8 |
2 files changed, 10 insertions, 19 deletions
diff --git a/kernel/trace/trace_output.c b/kernel/trace/trace_output.c index bac629af2285..c738e764e2a5 100644 --- a/kernel/trace/trace_output.c +++ b/kernel/trace/trace_output.c | |||
| @@ -656,15 +656,6 @@ int trace_print_lat_context(struct trace_iterator *iter) | |||
| 656 | return !trace_seq_has_overflowed(s); | 656 | return !trace_seq_has_overflowed(s); |
| 657 | } | 657 | } |
| 658 | 658 | ||
| 659 | static const char state_to_char[] = TASK_STATE_TO_CHAR_STR; | ||
| 660 | |||
| 661 | static int task_state_char(unsigned long state) | ||
| 662 | { | ||
| 663 | int bit = state ? __ffs(state) + 1 : 0; | ||
| 664 | |||
| 665 | return bit < sizeof(state_to_char) - 1 ? state_to_char[bit] : '?'; | ||
| 666 | } | ||
| 667 | |||
| 668 | /** | 659 | /** |
| 669 | * ftrace_find_event - find a registered event | 660 | * ftrace_find_event - find a registered event |
| 670 | * @type: the type of event to look for | 661 | * @type: the type of event to look for |
| @@ -930,8 +921,8 @@ static enum print_line_t trace_ctxwake_print(struct trace_iterator *iter, | |||
| 930 | 921 | ||
| 931 | trace_assign_type(field, iter->ent); | 922 | trace_assign_type(field, iter->ent); |
| 932 | 923 | ||
| 933 | T = task_state_char(field->next_state); | 924 | T = __task_state_to_char(field->next_state); |
| 934 | S = task_state_char(field->prev_state); | 925 | S = __task_state_to_char(field->prev_state); |
| 935 | trace_find_cmdline(field->next_pid, comm); | 926 | trace_find_cmdline(field->next_pid, comm); |
| 936 | trace_seq_printf(&iter->seq, | 927 | trace_seq_printf(&iter->seq, |
| 937 | " %5d:%3d:%c %s [%03d] %5d:%3d:%c %s\n", | 928 | " %5d:%3d:%c %s [%03d] %5d:%3d:%c %s\n", |
| @@ -966,8 +957,8 @@ static int trace_ctxwake_raw(struct trace_iterator *iter, char S) | |||
| 966 | trace_assign_type(field, iter->ent); | 957 | trace_assign_type(field, iter->ent); |
| 967 | 958 | ||
| 968 | if (!S) | 959 | if (!S) |
| 969 | S = task_state_char(field->prev_state); | 960 | S = __task_state_to_char(field->prev_state); |
| 970 | T = task_state_char(field->next_state); | 961 | T = __task_state_to_char(field->next_state); |
| 971 | trace_seq_printf(&iter->seq, "%d %d %c %d %d %d %c\n", | 962 | trace_seq_printf(&iter->seq, "%d %d %c %d %d %d %c\n", |
| 972 | field->prev_pid, | 963 | field->prev_pid, |
| 973 | field->prev_prio, | 964 | field->prev_prio, |
| @@ -1002,8 +993,8 @@ static int trace_ctxwake_hex(struct trace_iterator *iter, char S) | |||
| 1002 | trace_assign_type(field, iter->ent); | 993 | trace_assign_type(field, iter->ent); |
| 1003 | 994 | ||
| 1004 | if (!S) | 995 | if (!S) |
| 1005 | S = task_state_char(field->prev_state); | 996 | S = __task_state_to_char(field->prev_state); |
| 1006 | T = task_state_char(field->next_state); | 997 | T = __task_state_to_char(field->next_state); |
| 1007 | 998 | ||
| 1008 | SEQ_PUT_HEX_FIELD(s, field->prev_pid); | 999 | SEQ_PUT_HEX_FIELD(s, field->prev_pid); |
| 1009 | SEQ_PUT_HEX_FIELD(s, field->prev_prio); | 1000 | SEQ_PUT_HEX_FIELD(s, field->prev_prio); |
diff --git a/kernel/trace/trace_sched_wakeup.c b/kernel/trace/trace_sched_wakeup.c index ddec53b67646..0c331978b1a6 100644 --- a/kernel/trace/trace_sched_wakeup.c +++ b/kernel/trace/trace_sched_wakeup.c | |||
| @@ -397,10 +397,10 @@ tracing_sched_switch_trace(struct trace_array *tr, | |||
| 397 | entry = ring_buffer_event_data(event); | 397 | entry = ring_buffer_event_data(event); |
| 398 | entry->prev_pid = prev->pid; | 398 | entry->prev_pid = prev->pid; |
| 399 | entry->prev_prio = prev->prio; | 399 | entry->prev_prio = prev->prio; |
| 400 | entry->prev_state = prev->state; | 400 | entry->prev_state = __get_task_state(prev); |
| 401 | entry->next_pid = next->pid; | 401 | entry->next_pid = next->pid; |
| 402 | entry->next_prio = next->prio; | 402 | entry->next_prio = next->prio; |
| 403 | entry->next_state = next->state; | 403 | entry->next_state = __get_task_state(next); |
| 404 | entry->next_cpu = task_cpu(next); | 404 | entry->next_cpu = task_cpu(next); |
| 405 | 405 | ||
| 406 | if (!call_filter_check_discard(call, entry, buffer, event)) | 406 | if (!call_filter_check_discard(call, entry, buffer, event)) |
| @@ -425,10 +425,10 @@ tracing_sched_wakeup_trace(struct trace_array *tr, | |||
| 425 | entry = ring_buffer_event_data(event); | 425 | entry = ring_buffer_event_data(event); |
| 426 | entry->prev_pid = curr->pid; | 426 | entry->prev_pid = curr->pid; |
| 427 | entry->prev_prio = curr->prio; | 427 | entry->prev_prio = curr->prio; |
| 428 | entry->prev_state = curr->state; | 428 | entry->prev_state = __get_task_state(curr); |
| 429 | entry->next_pid = wakee->pid; | 429 | entry->next_pid = wakee->pid; |
| 430 | entry->next_prio = wakee->prio; | 430 | entry->next_prio = wakee->prio; |
| 431 | entry->next_state = wakee->state; | 431 | entry->next_state = __get_task_state(wakee); |
| 432 | entry->next_cpu = task_cpu(wakee); | 432 | entry->next_cpu = task_cpu(wakee); |
| 433 | 433 | ||
| 434 | if (!call_filter_check_discard(call, entry, buffer, event)) | 434 | if (!call_filter_check_discard(call, entry, buffer, event)) |
