summaryrefslogtreecommitdiff
path: root/fs/configfs/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/configfs/file.c')
-rw-r--r--fs/configfs/file.c15
1 files changed, 3 insertions, 12 deletions
diff --git a/fs/configfs/file.c b/fs/configfs/file.c
index 106ca589e90a..d39099ea7df7 100644
--- a/fs/configfs/file.c
+++ b/fs/configfs/file.c
@@ -65,7 +65,6 @@ static int fill_read_buffer(struct dentry * dentry, struct configfs_buffer * buf
{
struct configfs_attribute * attr = to_attr(dentry);
struct config_item * item = to_item(dentry->d_parent);
- struct configfs_item_operations * ops = buffer->ops;
int ret = 0;
ssize_t count;
@@ -74,10 +73,7 @@ static int fill_read_buffer(struct dentry * dentry, struct configfs_buffer * buf
if (!buffer->page)
return -ENOMEM;
- if (ops->show_attribute)
- count = ops->show_attribute(item, attr, buffer->page);
- else
- count = attr->show(item, buffer->page);
+ count = attr->show(item, buffer->page);
buffer->needs_read_fill = 0;
BUG_ON(count > (ssize_t)SIMPLE_ATTR_SIZE);
@@ -175,10 +171,7 @@ flush_write_buffer(struct dentry * dentry, struct configfs_buffer * buffer, size
{
struct configfs_attribute * attr = to_attr(dentry);
struct config_item * item = to_item(dentry->d_parent);
- struct configfs_item_operations * ops = buffer->ops;
- if (ops->store_attribute)
- return ops->store_attribute(item, attr, buffer->page, count);
return attr->store(item, buffer->page, count);
}
@@ -243,8 +236,7 @@ static int check_perm(struct inode * inode, struct file * file)
* and we must have a store method.
*/
if (file->f_mode & FMODE_WRITE) {
- if (!(inode->i_mode & S_IWUGO) ||
- (!ops->store_attribute && !attr->store))
+ if (!(inode->i_mode & S_IWUGO) || !attr->store)
goto Eaccess;
}
@@ -254,8 +246,7 @@ static int check_perm(struct inode * inode, struct file * file)
* must be a show method for it.
*/
if (file->f_mode & FMODE_READ) {
- if (!(inode->i_mode & S_IRUGO) ||
- (!ops->show_attribute && !attr->show))
+ if (!(inode->i_mode & S_IRUGO) || !attr->show)
goto Eaccess;
}