Browse Source

ftrace: convert unsigned index to signed

Impact: fix to unsigned compared to less than zero

Roel Kluin pointed out that there is a compare of an unsigned number
to less than zero. A previous clean up had the unsigned index set
to -1 for certain cases, but never converted it to signed.

Frederic Weisbecker noticed that another index is used to compare
the above index to and it also needs to be converted to signed.

[
  Converted ftrace_page->index to int from unsigned long as
  Andrew Morton pointed out that there's no need for it to
  stay a long.
]

Reported-by: Roel Kluin <roel.kluin@gmail.com>
Reported-by: Frederic Weisbecker <fweisbec@gmail.com>
Signed-off-by: Steven Rostedt <srostedt@redhat.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Steven Rostedt 16 years ago
parent
commit
431aa3fbf5
1 changed files with 2 additions and 2 deletions
  1. 2 2
      kernel/trace/ftrace.c

+ 2 - 2
kernel/trace/ftrace.c

@@ -289,7 +289,7 @@ static DEFINE_MUTEX(ftrace_regex_lock);
 
 
 struct ftrace_page {
 struct ftrace_page {
 	struct ftrace_page	*next;
 	struct ftrace_page	*next;
-	unsigned long		index;
+	int			index;
 	struct dyn_ftrace	records[];
 	struct dyn_ftrace	records[];
 };
 };
 
 
@@ -786,7 +786,7 @@ enum {
 
 
 struct ftrace_iterator {
 struct ftrace_iterator {
 	struct ftrace_page	*pg;
 	struct ftrace_page	*pg;
-	unsigned		idx;
+	int			idx;
 	unsigned		flags;
 	unsigned		flags;
 	unsigned char		buffer[FTRACE_BUFF_MAX+1];
 	unsigned char		buffer[FTRACE_BUFF_MAX+1];
 	unsigned		buffer_idx;
 	unsigned		buffer_idx;