All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] trace_stat: Fix missing entry in stat file
@ 2009-08-17  8:52 Li Zefan
  2009-08-17  8:53 ` [PATCH 2/3] trace_stack: Simplify seqfile code Li Zefan
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Li Zefan @ 2009-08-17  8:52 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Steven Rostedt, Frederic Weisbecker, LKML

One entry is missing in the output of a stat file.

The cause is, when stat_seq_start() is called the 2nd time, we should
start from the (pos-1)th elem in the rbtree but not pos, because
pos == 0 is the header.

Signed-off-by: Li Zefan <lizf@cn.fujitsu.com>
---
 kernel/trace/trace_stat.c |   10 +++++++---
 1 files changed, 7 insertions(+), 3 deletions(-)

diff --git a/kernel/trace/trace_stat.c b/kernel/trace/trace_stat.c
index 07c60b0..a4bb239 100644
--- a/kernel/trace/trace_stat.c
+++ b/kernel/trace/trace_stat.c
@@ -203,17 +203,21 @@ static void *stat_seq_start(struct seq_file *s, loff_t *pos)
 {
 	struct stat_session *session = s->private;
 	struct rb_node *node;
+	int n = *pos;
 	int i;
 
 	/* Prevent from tracer switch or rbtree modification */
 	mutex_lock(&session->stat_mutex);
 
 	/* If we are in the beginning of the file, print the headers */
-	if (!*pos && session->ts->stat_headers)
-		return SEQ_START_TOKEN;
+	if (session->ts->stat_headers) {
+		if (n == 0)
+			return SEQ_START_TOKEN;
+		n--;
+	}
 
 	node = rb_first(&session->stat_root);
-	for (i = 0; node && i < *pos; i++)
+	for (i = 0; node && i < n; i++)
 		node = rb_next(node);
 
 	return node;
-- 
1.6.3

^ permalink raw reply related	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2009-08-17  9:32 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-08-17  8:52 [PATCH 1/3] trace_stat: Fix missing entry in stat file Li Zefan
2009-08-17  8:53 ` [PATCH 2/3] trace_stack: Simplify seqfile code Li Zefan
2009-08-17  9:31   ` [tip:tracing/core] " tip-bot for Li Zefan
2009-08-17  8:54 ` [PATCH 3/3] ftrace: " Li Zefan
2009-08-17  9:31   ` [tip:tracing/core] " tip-bot for Li Zefan
2009-08-17  9:31 ` [tip:tracing/core] trace_stat: Fix missing entry in stat file tip-bot for Li Zefan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.