diff options
| author | Al Viro <viro@zeniv.linux.org.uk> | 2011-01-12 16:41:05 -0500 |
|---|---|---|
| committer | Al Viro <viro@zeniv.linux.org.uk> | 2011-01-12 20:03:12 -0500 |
| commit | d463a0c4b53a8fab505fd9aa3a1a04cb9f411b78 (patch) | |
| tree | 42a95add68d4fd34f17235a938e1bfa1ea905f70 /fs/configfs | |
| parent | 31a203df9c109480fc6d48ba0a68763e89199acb (diff) | |
switch configfs
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'fs/configfs')
| -rw-r--r-- | fs/configfs/configfs_internal.h | 1 | ||||
| -rw-r--r-- | fs/configfs/dir.c | 6 | ||||
| -rw-r--r-- | fs/configfs/mount.c | 1 |
3 files changed, 3 insertions, 5 deletions
diff --git a/fs/configfs/configfs_internal.h b/fs/configfs/configfs_internal.h index 026cf68553a4..82bda8fdfc1c 100644 --- a/fs/configfs/configfs_internal.h +++ b/fs/configfs/configfs_internal.h | |||
| @@ -90,6 +90,7 @@ extern const struct file_operations configfs_file_operations; | |||
| 90 | extern const struct file_operations bin_fops; | 90 | extern const struct file_operations bin_fops; |
| 91 | extern const struct inode_operations configfs_dir_inode_operations; | 91 | extern const struct inode_operations configfs_dir_inode_operations; |
| 92 | extern const struct inode_operations configfs_symlink_inode_operations; | 92 | extern const struct inode_operations configfs_symlink_inode_operations; |
| 93 | extern const struct dentry_operations configfs_dentry_ops; | ||
| 93 | 94 | ||
| 94 | extern int configfs_symlink(struct inode *dir, struct dentry *dentry, | 95 | extern int configfs_symlink(struct inode *dir, struct dentry *dentry, |
| 95 | const char *symname); | 96 | const char *symname); |
diff --git a/fs/configfs/dir.c b/fs/configfs/dir.c index 36637a8c1ed3..90ff3cb10de3 100644 --- a/fs/configfs/dir.c +++ b/fs/configfs/dir.c | |||
| @@ -72,7 +72,7 @@ static int configfs_d_delete(const struct dentry *dentry) | |||
| 72 | return 1; | 72 | return 1; |
| 73 | } | 73 | } |
| 74 | 74 | ||
| 75 | static const struct dentry_operations configfs_dentry_ops = { | 75 | const struct dentry_operations configfs_dentry_ops = { |
| 76 | .d_iput = configfs_d_iput, | 76 | .d_iput = configfs_d_iput, |
| 77 | /* simple_delete_dentry() isn't exported */ | 77 | /* simple_delete_dentry() isn't exported */ |
| 78 | .d_delete = configfs_d_delete, | 78 | .d_delete = configfs_d_delete, |
| @@ -442,7 +442,6 @@ static int configfs_attach_attr(struct configfs_dirent * sd, struct dentry * den | |||
| 442 | return error; | 442 | return error; |
| 443 | } | 443 | } |
| 444 | 444 | ||
| 445 | d_set_d_op(dentry, &configfs_dentry_ops); | ||
| 446 | d_rehash(dentry); | 445 | d_rehash(dentry); |
| 447 | 446 | ||
| 448 | return 0; | 447 | return 0; |
| @@ -489,7 +488,6 @@ static struct dentry * configfs_lookup(struct inode *dir, | |||
| 489 | */ | 488 | */ |
| 490 | if (dentry->d_name.len > NAME_MAX) | 489 | if (dentry->d_name.len > NAME_MAX) |
| 491 | return ERR_PTR(-ENAMETOOLONG); | 490 | return ERR_PTR(-ENAMETOOLONG); |
| 492 | d_set_d_op(dentry, &configfs_dentry_ops); | ||
| 493 | d_add(dentry, NULL); | 491 | d_add(dentry, NULL); |
| 494 | return NULL; | 492 | return NULL; |
| 495 | } | 493 | } |
| @@ -683,7 +681,6 @@ static int create_default_group(struct config_group *parent_group, | |||
| 683 | ret = -ENOMEM; | 681 | ret = -ENOMEM; |
| 684 | child = d_alloc(parent, &name); | 682 | child = d_alloc(parent, &name); |
| 685 | if (child) { | 683 | if (child) { |
| 686 | d_set_d_op(child, &configfs_dentry_ops); | ||
| 687 | d_add(child, NULL); | 684 | d_add(child, NULL); |
| 688 | 685 | ||
| 689 | ret = configfs_attach_group(&parent_group->cg_item, | 686 | ret = configfs_attach_group(&parent_group->cg_item, |
| @@ -1681,7 +1678,6 @@ int configfs_register_subsystem(struct configfs_subsystem *subsys) | |||
| 1681 | err = -ENOMEM; | 1678 | err = -ENOMEM; |
| 1682 | dentry = d_alloc(configfs_sb->s_root, &name); | 1679 | dentry = d_alloc(configfs_sb->s_root, &name); |
| 1683 | if (dentry) { | 1680 | if (dentry) { |
| 1684 | d_set_d_op(dentry, &configfs_dentry_ops); | ||
| 1685 | d_add(dentry, NULL); | 1681 | d_add(dentry, NULL); |
| 1686 | 1682 | ||
| 1687 | err = configfs_attach_group(sd->s_element, &group->cg_item, | 1683 | err = configfs_attach_group(sd->s_element, &group->cg_item, |
diff --git a/fs/configfs/mount.c b/fs/configfs/mount.c index 7d3607febe1c..ecc62178beda 100644 --- a/fs/configfs/mount.c +++ b/fs/configfs/mount.c | |||
| @@ -101,6 +101,7 @@ static int configfs_fill_super(struct super_block *sb, void *data, int silent) | |||
| 101 | configfs_root_group.cg_item.ci_dentry = root; | 101 | configfs_root_group.cg_item.ci_dentry = root; |
| 102 | root->d_fsdata = &configfs_root; | 102 | root->d_fsdata = &configfs_root; |
| 103 | sb->s_root = root; | 103 | sb->s_root = root; |
| 104 | sb->s_d_op = &configfs_dentry_ops; /* the rest get that */ | ||
| 104 | return 0; | 105 | return 0; |
| 105 | } | 106 | } |
| 106 | 107 | ||
