aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/oprofile/buffer_sync.c1
-rw-r--r--drivers/oprofile/oprof.c24
2 files changed, 12 insertions, 13 deletions
diff --git a/drivers/oprofile/buffer_sync.c b/drivers/oprofile/buffer_sync.c
index ed982273fb8b..564577307a5e 100644
--- a/drivers/oprofile/buffer_sync.c
+++ b/drivers/oprofile/buffer_sync.c
@@ -41,7 +41,6 @@ static cpumask_t marked_cpus = CPU_MASK_NONE;
41static DEFINE_SPINLOCK(task_mortuary); 41static DEFINE_SPINLOCK(task_mortuary);
42static void process_task_mortuary(void); 42static void process_task_mortuary(void);
43 43
44
45/* Take ownership of the task struct and place it on the 44/* Take ownership of the task struct and place it on the
46 * list for processing. Only after two full buffer syncs 45 * list for processing. Only after two full buffer syncs
47 * does the task eventually get freed, because by then 46 * does the task eventually get freed, because by then
diff --git a/drivers/oprofile/oprof.c b/drivers/oprofile/oprof.c
index 2c645170f06e..50062cea292c 100644
--- a/drivers/oprofile/oprof.c
+++ b/drivers/oprofile/oprof.c
@@ -19,7 +19,7 @@
19#include "cpu_buffer.h" 19#include "cpu_buffer.h"
20#include "buffer_sync.h" 20#include "buffer_sync.h"
21#include "oprofile_stats.h" 21#include "oprofile_stats.h"
22 22
23struct oprofile_operations oprofile_ops; 23struct oprofile_operations oprofile_ops;
24 24
25unsigned long oprofile_started; 25unsigned long oprofile_started;
@@ -36,7 +36,7 @@ static int timer = 0;
36int oprofile_setup(void) 36int oprofile_setup(void)
37{ 37{
38 int err; 38 int err;
39 39
40 mutex_lock(&start_mutex); 40 mutex_lock(&start_mutex);
41 41
42 if ((err = alloc_cpu_buffers())) 42 if ((err = alloc_cpu_buffers()))
@@ -44,10 +44,10 @@ int oprofile_setup(void)
44 44
45 if ((err = alloc_event_buffer())) 45 if ((err = alloc_event_buffer()))
46 goto out1; 46 goto out1;
47 47
48 if (oprofile_ops.setup && (err = oprofile_ops.setup())) 48 if (oprofile_ops.setup && (err = oprofile_ops.setup()))
49 goto out2; 49 goto out2;
50 50
51 /* Note even though this starts part of the 51 /* Note even though this starts part of the
52 * profiling overhead, it's necessary to prevent 52 * profiling overhead, it's necessary to prevent
53 * us missing task deaths and eventually oopsing 53 * us missing task deaths and eventually oopsing
@@ -74,7 +74,7 @@ post_sync:
74 is_setup = 1; 74 is_setup = 1;
75 mutex_unlock(&start_mutex); 75 mutex_unlock(&start_mutex);
76 return 0; 76 return 0;
77 77
78out3: 78out3:
79 if (oprofile_ops.shutdown) 79 if (oprofile_ops.shutdown)
80 oprofile_ops.shutdown(); 80 oprofile_ops.shutdown();
@@ -92,17 +92,17 @@ out:
92int oprofile_start(void) 92int oprofile_start(void)
93{ 93{
94 int err = -EINVAL; 94 int err = -EINVAL;
95 95
96 mutex_lock(&start_mutex); 96 mutex_lock(&start_mutex);
97 97
98 if (!is_setup) 98 if (!is_setup)
99 goto out; 99 goto out;
100 100
101 err = 0; 101 err = 0;
102 102
103 if (oprofile_started) 103 if (oprofile_started)
104 goto out; 104 goto out;
105 105
106 oprofile_reset_stats(); 106 oprofile_reset_stats();
107 107
108 if ((err = oprofile_ops.start())) 108 if ((err = oprofile_ops.start()))
@@ -114,7 +114,7 @@ out:
114 return err; 114 return err;
115} 115}
116 116
117 117
118/* echo 0>/dev/oprofile/enable */ 118/* echo 0>/dev/oprofile/enable */
119void oprofile_stop(void) 119void oprofile_stop(void)
120{ 120{
@@ -204,13 +204,13 @@ static void __exit oprofile_exit(void)
204 oprofile_arch_exit(); 204 oprofile_arch_exit();
205} 205}
206 206
207 207
208module_init(oprofile_init); 208module_init(oprofile_init);
209module_exit(oprofile_exit); 209module_exit(oprofile_exit);
210 210
211module_param_named(timer, timer, int, 0644); 211module_param_named(timer, timer, int, 0644);
212MODULE_PARM_DESC(timer, "force use of timer interrupt"); 212MODULE_PARM_DESC(timer, "force use of timer interrupt");
213 213
214MODULE_LICENSE("GPL"); 214MODULE_LICENSE("GPL");
215MODULE_AUTHOR("John Levon <levon@movementarian.org>"); 215MODULE_AUTHOR("John Levon <levon@movementarian.org>");
216MODULE_DESCRIPTION("OProfile system profiler"); 216MODULE_DESCRIPTION("OProfile system profiler");