diff options
author | Jason Yeh <jason.yeh@amd.com> | 2008-07-23 17:05:53 -0400 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2008-07-26 05:48:16 -0400 |
commit | 1a960b402a51d80abf54e3f8e4972374ffe5f22d (patch) | |
tree | 108222afe94df145e7a71f44bb077067c35f0131 /drivers/oprofile/oprof.h | |
parent | 6852fd9b86d05063c6ef49d2e12e061cc7f6a105 (diff) |
Oprofile Multiplexing Patch
This patch introduces multiplexing support for the Oprofile kernel
module. It basically adds a new function pointer in oprofile_operator
allowing each architecture to supply its callback to switch between
different sets of event when the timer expires. Userspace tools can
modify the time slice through /dev/oprofile/time_slice.
It also modifies the number of counters exposed to the userspace through
/dev/oprofile. For example, the number of counters for AMD CPUs are
changed to 32 and multiplexed in the sets of 4.
Signed-off-by: Jason Yeh <jason.yeh@amd.com>
Signed-off-by: Robert Richter <robert.richter@amd.com>
Cc: oprofile-list <oprofile-list@lists.sourceforge.net>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'drivers/oprofile/oprof.h')
-rw-r--r-- | drivers/oprofile/oprof.h | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/oprofile/oprof.h b/drivers/oprofile/oprof.h index 18323650806e..c4406a7366bb 100644 --- a/drivers/oprofile/oprof.h +++ b/drivers/oprofile/oprof.h | |||
@@ -27,7 +27,8 @@ extern unsigned long fs_buffer_watershed; | |||
27 | extern struct oprofile_operations oprofile_ops; | 27 | extern struct oprofile_operations oprofile_ops; |
28 | extern unsigned long oprofile_started; | 28 | extern unsigned long oprofile_started; |
29 | extern unsigned long backtrace_depth; | 29 | extern unsigned long backtrace_depth; |
30 | 30 | extern unsigned long timeout_jiffies; | |
31 | |||
31 | struct super_block; | 32 | struct super_block; |
32 | struct dentry; | 33 | struct dentry; |
33 | 34 | ||
@@ -35,5 +36,6 @@ void oprofile_create_files(struct super_block * sb, struct dentry * root); | |||
35 | void oprofile_timer_init(struct oprofile_operations * ops); | 36 | void oprofile_timer_init(struct oprofile_operations * ops); |
36 | 37 | ||
37 | int oprofile_set_backtrace(unsigned long depth); | 38 | int oprofile_set_backtrace(unsigned long depth); |
39 | int oprofile_set_timeout(unsigned long time); | ||
38 | 40 | ||
39 | #endif /* OPROF_H */ | 41 | #endif /* OPROF_H */ |