[sysprof] Really disable hardware counters.



commit b957f30379a9d85f2088612dd54cde671b6f1f9d
Author: Søren Sandmann Pedersen <sandmann daimi au dk>
Date:   Sun Mar 21 12:12:42 2010 -0400

    Really disable hardware counters.

 collector.c |    7 ++++---
 1 files changed, 4 insertions(+), 3 deletions(-)
---
diff --git a/collector.c b/collector.c
index 1c7af11..7eef464 100644
--- a/collector.c
+++ b/collector.c
@@ -406,7 +406,7 @@ counter_new (Collector  *collector,
     attr.task = 1;
     attr.exclude_idle = 1;
     
-    if ((fd = sysprof_perf_counter_open (&attr, -1, cpu, -1,  0)) < 0)
+    if (!collector->use_hw_counters || (fd = sysprof_perf_counter_open (&attr, -1, cpu, -1,  0)) < 0)
     {
 	attr.type = PERF_TYPE_SOFTWARE;
 	attr.config = PERF_COUNT_SW_CPU_CLOCK;
@@ -417,7 +417,7 @@ counter_new (Collector  *collector,
     
     if (fd < 0)
 	return fail (err, "Could not open performance counter");
-
+    
     counter->collector = collector;
     counter->fd = fd;
 
@@ -431,8 +431,9 @@ counter_new (Collector  *collector,
     counter->cpu = cpu;
     
     fd_add_watch (fd, counter);
+
     fd_set_read_callback (fd, on_read);
-    
+
     return counter;
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]