]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/oprofile/oprofile_files.c
Merge branch 'for-linus' of git://neil.brown.name/md
[karo-tx-linux.git] / drivers / oprofile / oprofile_files.c
index bbd7516e0869461c141659004580d509ec5e97a5..89f63456646fa4c67b6ee74f7c657917be05a425 100644 (file)
@@ -59,6 +59,7 @@ static ssize_t timeout_write(struct file *file, char const __user *buf,
 static const struct file_operations timeout_fops = {
        .read           = timeout_read,
        .write          = timeout_write,
+       .llseek         = default_llseek,
 };
 
 #endif
@@ -79,21 +80,25 @@ static ssize_t depth_write(struct file *file, char const __user *buf, size_t cou
        if (*offset)
                return -EINVAL;
 
+       if (!oprofile_ops.backtrace)
+               return -EINVAL;
+
        retval = oprofilefs_ulong_from_user(&val, buf, count);
        if (retval)
                return retval;
 
-       retval = oprofile_set_backtrace(val);
-
+       retval = oprofile_set_ulong(&oprofile_backtrace_depth, val);
        if (retval)
                return retval;
+
        return count;
 }
 
 
 static const struct file_operations depth_fops = {
        .read           = depth_read,
-       .write          = depth_write
+       .write          = depth_write,
+       .llseek         = default_llseek,
 };
 
 
@@ -105,6 +110,7 @@ static ssize_t pointer_size_read(struct file *file, char __user *buf, size_t cou
 
 static const struct file_operations pointer_size_fops = {
        .read           = pointer_size_read,
+       .llseek         = default_llseek,
 };
 
 
@@ -116,6 +122,7 @@ static ssize_t cpu_type_read(struct file *file, char __user *buf, size_t count,
 
 static const struct file_operations cpu_type_fops = {
        .read           = cpu_type_read,
+       .llseek         = default_llseek,
 };
 
 
@@ -151,6 +158,7 @@ static ssize_t enable_write(struct file *file, char const __user *buf, size_t co
 static const struct file_operations enable_fops = {
        .read           = enable_read,
        .write          = enable_write,
+       .llseek         = default_llseek,
 };
 
 
@@ -163,6 +171,7 @@ static ssize_t dump_write(struct file *file, char const __user *buf, size_t coun
 
 static const struct file_operations dump_fops = {
        .write          = dump_write,
+       .llseek         = noop_llseek,
 };
 
 void oprofile_create_files(struct super_block *sb, struct dentry *root)