aboutsummaryrefslogtreecommitdiffstats
path: root/fs/sysfs/bin.c
diff options
context:
space:
mode:
Diffstat (limited to 'fs/sysfs/bin.c')
-rw-r--r--fs/sysfs/bin.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/fs/sysfs/bin.c b/fs/sysfs/bin.c
index e93fe5e2fa41..9c8f8824e660 100644
--- a/fs/sysfs/bin.c
+++ b/fs/sysfs/bin.c
@@ -171,8 +171,8 @@ static int open(struct inode * inode, struct file * file)
171 struct bin_buffer *bb = NULL; 171 struct bin_buffer *bb = NULL;
172 int error; 172 int error;
173 173
174 /* need attr_sd for attr */ 174 /* binary file operations requires both @sd and its parent */
175 if (!sysfs_get_active(attr_sd)) 175 if (!sysfs_get_active_two(attr_sd))
176 return -ENODEV; 176 return -ENODEV;
177 177
178 error = -EACCES; 178 error = -EACCES;
@@ -193,12 +193,12 @@ static int open(struct inode * inode, struct file * file)
193 mutex_init(&bb->mutex); 193 mutex_init(&bb->mutex);
194 file->private_data = bb; 194 file->private_data = bb;
195 195
196 /* open succeeded, put active reference */ 196 /* open succeeded, put active references */
197 sysfs_put_active(attr_sd); 197 sysfs_put_active_two(attr_sd);
198 return 0; 198 return 0;
199 199
200 err_out: 200 err_out:
201 sysfs_put_active(attr_sd); 201 sysfs_put_active_two(attr_sd);
202 kfree(bb); 202 kfree(bb);
203 return error; 203 return error;
204} 204}