Gitweb:     
http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=078ce6409ca54d5fc6eb7d2147cd6efc3eb09078
Commit:     078ce6409ca54d5fc6eb7d2147cd6efc3eb09078
Parent:     50ab1a72863b1ad4b117862bc52610f8d4535609
Author:     Tejun Heo <[EMAIL PROTECTED]>
AuthorDate: Thu Sep 20 16:05:10 2007 +0900
Committer:  Greg Kroah-Hartman <[EMAIL PROTECTED]>
CommitDate: Fri Oct 12 14:51:10 2007 -0700

    sysfs: make bin attr open get active reference of parent too
    
    All bin attr operations require active references of itself and its
    parent.  There's no reason to allow open when its parent has been
    deactivated and allowing it is inconsistent with regular sysfs file.
    Use sysfs_get_active_two() in bin attribute open function.
    
    Signed-off-by: Tejun Heo <[EMAIL PROTECTED]>
    Acked-by: Cornelia Huck <[EMAIL PROTECTED]>
    Signed-off-by: Greg Kroah-Hartman <[EMAIL PROTECTED]>
---
 fs/sysfs/bin.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/fs/sysfs/bin.c b/fs/sysfs/bin.c
index e93fe5e..9c8f882 100644
--- a/fs/sysfs/bin.c
+++ b/fs/sysfs/bin.c
@@ -171,8 +171,8 @@ static int open(struct inode * inode, struct file * file)
        struct bin_buffer *bb = NULL;
        int error;
 
-       /* need attr_sd for attr */
-       if (!sysfs_get_active(attr_sd))
+       /* binary file operations requires both @sd and its parent */
+       if (!sysfs_get_active_two(attr_sd))
                return -ENODEV;
 
        error = -EACCES;
@@ -193,12 +193,12 @@ static int open(struct inode * inode, struct file * file)
        mutex_init(&bb->mutex);
        file->private_data = bb;
 
-       /* open succeeded, put active reference */
-       sysfs_put_active(attr_sd);
+       /* open succeeded, put active references */
+       sysfs_put_active_two(attr_sd);
        return 0;
 
  err_out:
-       sysfs_put_active(attr_sd);
+       sysfs_put_active_two(attr_sd);
        kfree(bb);
        return error;
 }
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to