diff options
author | Robert Richter <robert.richter@amd.com> | 2008-12-09 16:56:01 +0100 |
---|---|---|
committer | Robert Richter <robert.richter@amd.com> | 2008-12-10 14:20:10 +0100 |
commit | 37ca5eb341711d7aeb9f296873b9d46eb6af33ec (patch) | |
tree | e8d3a5003a90a7cdbc8da9835f8936c05820e85a /drivers/oprofile/oprofile_files.c | |
parent | fd7826d56bde11ab142d2431093773ad2b3f0a59 (diff) | |
download | lwn-37ca5eb341711d7aeb9f296873b9d46eb6af33ec.tar.gz lwn-37ca5eb341711d7aeb9f296873b9d46eb6af33ec.zip |
oprofile: set values to default when creating oprofilefs
This patch restores default values for:
/dev/oprofile/cpu_buffer_size
/dev/oprofile/buffer_watershed
/dev/oprofile/buffer_size
when creating the oprofilefs:
# opcontrol --deinit
# opcontrol --init
# cat /dev/oprofile/cpu_buffer_size
8192
# echo 5123 > /dev/oprofile/cpu_buffer_size
# cat /dev/oprofile/cpu_buffer_size
5123
# opcontrol --deinit
# opcontrol --init
# cat /dev/oprofile/cpu_buffer_size
8192
# opcontrol --deinit
This sets the values in a defined state. Before, there was no way to
restore the defaults without rebooting the system or reloading the
module.
Signed-off-by: Robert Richter <robert.richter@amd.com>
Diffstat (limited to 'drivers/oprofile/oprofile_files.c')
-rw-r--r-- | drivers/oprofile/oprofile_files.c | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/drivers/oprofile/oprofile_files.c b/drivers/oprofile/oprofile_files.c index cc106d503ace..d8201998b0b7 100644 --- a/drivers/oprofile/oprofile_files.c +++ b/drivers/oprofile/oprofile_files.c @@ -14,9 +14,13 @@ #include "oprofile_stats.h" #include "oprof.h" -unsigned long fs_buffer_size = 131072; -unsigned long fs_cpu_buffer_size = 8192; -unsigned long fs_buffer_watershed = 32768; /* FIXME: tune */ +#define FS_BUFFER_SIZE_DEFAULT 131072 +#define FS_CPU_BUFFER_SIZE_DEFAULT 8192 +#define FS_BUFFER_WATERSHED_DEFAULT 32768 /* FIXME: tune */ + +unsigned long fs_buffer_size; +unsigned long fs_cpu_buffer_size; +unsigned long fs_buffer_watershed; static ssize_t depth_read(struct file *file, char __user *buf, size_t count, loff_t *offset) { @@ -120,6 +124,11 @@ static const struct file_operations dump_fops = { void oprofile_create_files(struct super_block *sb, struct dentry *root) { + /* reinitialize default values */ + fs_buffer_size = FS_BUFFER_SIZE_DEFAULT; + fs_cpu_buffer_size = FS_CPU_BUFFER_SIZE_DEFAULT; + fs_buffer_watershed = FS_BUFFER_WATERSHED_DEFAULT; + oprofilefs_create_file(sb, root, "enable", &enable_fops); oprofilefs_create_file_perm(sb, root, "dump", &dump_fops, 0666); oprofilefs_create_file(sb, root, "buffer", &event_buffer_fops); |