aboutsummaryrefslogtreecommitdiffstats
path: root/fs/sysfs/inode.c
diff options
context:
space:
mode:
authorTejun Heo <htejun@gmail.com>2007-06-13 14:45:16 -0400
committerGreg Kroah-Hartman <gregkh@suse.de>2007-07-11 19:09:05 -0400
commit198a2a847015805c6f57d8cc732bdaaccb494007 (patch)
tree614aa44e1bd1ab31a5baaab717c3af95773bd06b /fs/sysfs/inode.c
parent73107cb3ad3963c0f929ae681c05081eafb1c079 (diff)
sysfs: separate out sysfs_attach_dentry()
Consolidate sd <-> dentry association into sysfs_attach_dentry() and call it after dentry and inode are properly set up. This is in preparation of sysfs_drop_dentry() updates. Signed-off-by: Tejun Heo <htejun@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Diffstat (limited to 'fs/sysfs/inode.c')
-rw-r--r--fs/sysfs/inode.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/fs/sysfs/inode.c b/fs/sysfs/inode.c
index d9ccc830b73a..88857a399d0c 100644
--- a/fs/sysfs/inode.c
+++ b/fs/sysfs/inode.c
@@ -156,13 +156,13 @@ struct inode * sysfs_new_inode(mode_t mode, struct sysfs_dirent * sd)
156 return inode; 156 return inode;
157} 157}
158 158
159int sysfs_create(struct dentry * dentry, int mode, int (*init)(struct inode *)) 159int sysfs_create(struct sysfs_dirent *sd, struct dentry *dentry, int mode,
160 int (*init)(struct inode *))
160{ 161{
161 int error = 0; 162 int error = 0;
162 struct inode * inode = NULL; 163 struct inode * inode = NULL;
163 if (dentry) { 164 if (dentry) {
164 if (!dentry->d_inode) { 165 if (!dentry->d_inode) {
165 struct sysfs_dirent * sd = dentry->d_fsdata;
166 if ((inode = sysfs_new_inode(mode, sd))) { 166 if ((inode = sysfs_new_inode(mode, sd))) {
167 if (dentry->d_parent && dentry->d_parent->d_inode) { 167 if (dentry->d_parent && dentry->d_parent->d_inode) {
168 struct inode *p_inode = dentry->d_parent->d_inode; 168 struct inode *p_inode = dentry->d_parent->d_inode;