o sysfs_dirent's s_mode field should also be updated in sysfs_setattr(), else
  there could be inconsistency in the two fields. s_mode is used while
  ->readdir so as not to bring in the inode to cache.

Signed-off-by: Maneesh Soni <[EMAIL PROTECTED]>
---

 linux-2.6.13-rc2-maneesh/fs/sysfs/inode.c |    2 +-
 1 files changed, 1 insertion(+), 1 deletion(-)

diff -puN fs/sysfs/inode.c~fix-sysfs_setattr-update-s_mode fs/sysfs/inode.c
--- linux-2.6.13-rc2/fs/sysfs/inode.c~fix-sysfs_setattr-update-s_mode   
2005-07-12 11:24:56.341493928 +0530
+++ linux-2.6.13-rc2-maneesh/fs/sysfs/inode.c   2005-07-12 11:24:56.347493016 
+0530
@@ -85,7 +85,7 @@ int sysfs_setattr(struct dentry * dentry
 
                if (!in_group_p(inode->i_gid) && !capable(CAP_FSETID))
                        mode &= ~S_ISGID;
-               sd_iattr->ia_mode = mode;
+               sd_iattr->ia_mode = sd->s_mode = mode;
        }
 
        return error;
_
-- 
Maneesh Soni
Linux Technology Center, 
IBM India Software Labs,
Bangalore, India
email: [EMAIL PROTECTED]
Phone: 91-80-25044990
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to