Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 220ba351 authored by Lai Jiangshan's avatar Lai Jiangshan Committed by Ingo Molnar
Browse files

trace_stat: keep original order



Impact: make trace_stat files show items with the original order

trace_stat tracer reverse the items, it makes the output
looks a little ugly.

Example, when we read trace_stat/workqueues, we get cpu#7's stat.
at first, and then cpu#6... cpu#0.

Signed-off-by: default avatarLai Jiangshan <laijs@cn.fujitsu.com>
Acked-by: default avatarSteven Rostedt <srostedt@redhat.com>
Acked-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <49C9F23F.5040307@cn.fujitsu.com>
Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
parent e6f48901
Loading
Loading
Loading
Loading
+8 −10
Original line number Diff line number Diff line
@@ -125,23 +125,21 @@ static int stat_seq_init(struct tracer_stat_session *session)
		INIT_LIST_HEAD(&new_entry->list);
		new_entry->stat = stat;

		list_for_each_entry(iter_entry, &session->stat_list, list) {
		list_for_each_entry_reverse(iter_entry, &session->stat_list,
				list) {

			/* Insertion with a descendent sorting */
			if (ts->stat_cmp(new_entry->stat,
						iter_entry->stat) > 0) {
			if (ts->stat_cmp(iter_entry->stat,
					new_entry->stat) >= 0) {

				list_add_tail(&new_entry->list,
						&iter_entry->list);
				break;

			/* The current smaller value */
			} else if (list_is_last(&iter_entry->list,
						&session->stat_list)) {
				list_add(&new_entry->list, &iter_entry->list);
				break;
			}
		}

		/* The current larger value */
		if (list_empty(&new_entry->list))
			list_add(&new_entry->list, &session->stat_list);
	}
exit:
	mutex_unlock(&session->stat_mutex);