diff options
Diffstat (limited to 'drivers/oprofile/cpu_buffer.c')
| -rw-r--r-- | drivers/oprofile/cpu_buffer.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/oprofile/cpu_buffer.c b/drivers/oprofile/cpu_buffer.c index f179ac2ea801..59f55441e075 100644 --- a/drivers/oprofile/cpu_buffer.c +++ b/drivers/oprofile/cpu_buffer.c | |||
| @@ -111,14 +111,18 @@ void start_cpu_work(void) | |||
| 111 | 111 | ||
| 112 | void end_cpu_work(void) | 112 | void end_cpu_work(void) |
| 113 | { | 113 | { |
| 114 | int i; | ||
| 115 | |||
| 116 | work_enabled = 0; | 114 | work_enabled = 0; |
| 115 | } | ||
| 116 | |||
| 117 | void flush_cpu_work(void) | ||
| 118 | { | ||
| 119 | int i; | ||
| 117 | 120 | ||
| 118 | for_each_online_cpu(i) { | 121 | for_each_online_cpu(i) { |
| 119 | struct oprofile_cpu_buffer *b = &per_cpu(op_cpu_buffer, i); | 122 | struct oprofile_cpu_buffer *b = &per_cpu(op_cpu_buffer, i); |
| 120 | 123 | ||
| 121 | cancel_delayed_work(&b->work); | 124 | /* these works are per-cpu, no need for flush_sync */ |
| 125 | flush_delayed_work(&b->work); | ||
| 122 | } | 126 | } |
| 123 | } | 127 | } |
| 124 | 128 | ||
