Parts of the debug-enabled warning became outdated, and the rest is not
really required anymore IMO - let's remove this altogether. Moreover,
the patch adds the CPU number to the trace header.

Jan

-- 
Siemens AG, Corporate Technology, CT SE 2
Corporate Competence Center Embedded Linux
---
 kernel/ipipe/tracer.c |   53 ++++++++++++++++----------------------------------
 1 file changed, 17 insertions(+), 36 deletions(-)

Index: linux-2.6.22.9/kernel/ipipe/tracer.c
===================================================================
--- linux-2.6.22.9.orig/kernel/ipipe/tracer.c
+++ linux-2.6.22.9/kernel/ipipe/tracer.c
@@ -831,27 +831,6 @@ static void __ipipe_print_symname(struct
 	}
 }
 
-#if defined(CONFIG_XENO_OPT_DEBUG) || defined(CONFIG_DEBUG_PREEMPT)
-static void __ipipe_print_dbgwarning(struct seq_file *m)
-{
-	seq_puts(m, "\n******** WARNING ********\n"
-		"The following debugging options will increase the observed "
-		"latencies:\n"
-#ifdef CONFIG_XENO_OPT_DEBUG
-		" o CONFIG_XENO_OPT_DEBUG\n"
-#endif /* CONFIG_XENO_OPT_DEBUG */
-#ifdef CONFIG_XENO_OPT_DEBUG_QUEUES
-		" o CONFIG_XENO_OPT_DEBUG_QUEUES (very costly)\n"
-#endif /* CONFIG_XENO_OPT_DEBUG */
-#ifdef CONFIG_DEBUG_PREEMPT
-		" o CONFIG_DEBUG_PREEMPT\n"
-#endif /* CONFIG_DEBUG_PREEMPT */
-		"\n");
-}
-#else /* !WARN_ON_DEBUGGING_LATENCIES */
-# define __ipipe_print_dbgwarning(m)
-#endif /* WARN_ON_DEBUGGING_LATENCIES */
-
 static void __ipipe_print_headline(struct seq_file *m)
 {
 	seq_printf(m, "Calibrated minimum trace-point overhead: %lu.%03lu "
@@ -907,7 +886,7 @@ static void *__ipipe_max_prtrace_start(s
 	if (!n) {
 		struct ipipe_trace_path *path;
 		unsigned long length_usecs;
-		int points, i;
+		int points, cpu;
 		unsigned long flags;
 
 		/* protect against max_path/frozen_path updates while we
@@ -917,11 +896,13 @@ static void *__ipipe_max_prtrace_start(s
 
 		/* find the longest of all per-cpu paths */
 		print_path = NULL;
-		for_each_online_cpu(i) {
-			path = &trace_paths[i][max_path[i]];
+		for_each_online_cpu(cpu) {
+			path = &trace_paths[cpu][max_path[cpu]];
 			if ((print_path == NULL) ||
-			    (path->length > print_path->length))
+			    (path->length > print_path->length)) {
 				print_path = path;
+				break;
+			}
 		}
 		print_path->dump_lock = 1;
 
@@ -948,10 +929,9 @@ static void *__ipipe_max_prtrace_start(s
 		seq_printf(m, "I-pipe worst-case tracing service on %s/ipipe-%s\n"
 			"------------------------------------------------------------\n",
 			UTS_RELEASE, IPIPE_ARCH_STRING);
-		__ipipe_print_dbgwarning(m);
-		seq_printf(m, "Begin: %lld cycles, Trace Points: %d (-%d/+%d), "
-			"Length: %lu us\n",
-			print_path->point[print_path->begin].timestamp,
+		seq_printf(m, "CPU: %d, Begin: %lld cycles, Trace Points: "
+			"%d (-%d/+%d), Length: %lu us\n",
+			cpu, print_path->point[print_path->begin].timestamp,
 			points, print_pre_trace, print_post_trace, length_usecs);
 		__ipipe_print_headline(m);
 	}
@@ -1068,7 +1048,7 @@ static void *__ipipe_frozen_prtrace_star
 
 	if (!n) {
 		struct ipipe_trace_path *path;
-		int i;
+		int cpu;
 		unsigned long flags;
 
 		/* protect against max_path/frozen_path updates while we
@@ -1078,10 +1058,12 @@ static void *__ipipe_frozen_prtrace_star
 
 		/* find the first of all per-cpu frozen paths */
 		print_path = NULL;
-		for_each_online_cpu(i) {
-			path = &trace_paths[i][frozen_path[i]];
-			if (path->end >= 0)
+		for_each_online_cpu(cpu) {
+			path = &trace_paths[cpu][frozen_path[cpu]];
+			if (path->end >= 0) {
 				print_path = path;
+				break;
+			}
 		}
 		if (print_path)
 			print_path->dump_lock = 1;
@@ -1105,9 +1087,8 @@ static void *__ipipe_frozen_prtrace_star
 			"------------------------------------------------------"
 			"------\n",
 			UTS_RELEASE, IPIPE_ARCH_STRING);
-		__ipipe_print_dbgwarning(m);
-		seq_printf(m, "Freeze: %lld cycles, Trace Points: %d (+%d)\n",
-			print_path->point[print_path->begin].timestamp,
+		seq_printf(m, "CPU: %d, Freeze: %lld cycles, Trace Points: %d (+%d)\n",
+			cpu, print_path->point[print_path->begin].timestamp,
 			print_pre_trace+1, print_post_trace);
 		__ipipe_print_headline(m);
 	}

_______________________________________________
Adeos-main mailing list
[email protected]
https://mail.gna.org/listinfo/adeos-main

Reply via email to