diff options
| author | James Morris <jmorris@namei.org> | 2011-03-15 18:41:17 -0400 |
|---|---|---|
| committer | James Morris <jmorris@namei.org> | 2011-03-15 18:41:17 -0400 |
| commit | a002951c97ff8da49938c982a4c236bf2fafdc9f (patch) | |
| tree | d43e7885ea7376df0a47a0fc8ceca66dc5bfa357 /fs/ext3 | |
| parent | 521cb40b0c44418a4fd36dc633f575813d59a43d (diff) | |
| parent | c151694b2c48d956ac8c8c59c6927f89cc29ef70 (diff) | |
Merge branch 'next' into for-linus
Diffstat (limited to 'fs/ext3')
| -rw-r--r-- | fs/ext3/ialloc.c | 5 | ||||
| -rw-r--r-- | fs/ext3/namei.c | 8 | ||||
| -rw-r--r-- | fs/ext3/xattr.h | 4 | ||||
| -rw-r--r-- | fs/ext3/xattr_security.c | 5 |
4 files changed, 12 insertions, 10 deletions
diff --git a/fs/ext3/ialloc.c b/fs/ext3/ialloc.c index 9724aef2246..bfc2dc43681 100644 --- a/fs/ext3/ialloc.c +++ b/fs/ext3/ialloc.c | |||
| @@ -404,7 +404,8 @@ static int find_group_other(struct super_block *sb, struct inode *parent) | |||
| 404 | * For other inodes, search forward from the parent directory's block | 404 | * For other inodes, search forward from the parent directory's block |
| 405 | * group to find a free inode. | 405 | * group to find a free inode. |
| 406 | */ | 406 | */ |
| 407 | struct inode *ext3_new_inode(handle_t *handle, struct inode * dir, int mode) | 407 | struct inode *ext3_new_inode(handle_t *handle, struct inode * dir, |
| 408 | const struct qstr *qstr, int mode) | ||
| 408 | { | 409 | { |
| 409 | struct super_block *sb; | 410 | struct super_block *sb; |
| 410 | struct buffer_head *bitmap_bh = NULL; | 411 | struct buffer_head *bitmap_bh = NULL; |
| @@ -589,7 +590,7 @@ got: | |||
| 589 | if (err) | 590 | if (err) |
| 590 | goto fail_free_drop; | 591 | goto fail_free_drop; |
| 591 | 592 | ||
| 592 | err = ext3_init_security(handle,inode, dir); | 593 | err = ext3_init_security(handle, inode, dir, qstr); |
| 593 | if (err) | 594 | if (err) |
| 594 | goto fail_free_drop; | 595 | goto fail_free_drop; |
| 595 | 596 | ||
diff --git a/fs/ext3/namei.c b/fs/ext3/namei.c index b27ba71810e..9dba3bd69d9 100644 --- a/fs/ext3/namei.c +++ b/fs/ext3/namei.c | |||
| @@ -1710,7 +1710,7 @@ retry: | |||
| 1710 | if (IS_DIRSYNC(dir)) | 1710 | if (IS_DIRSYNC(dir)) |
| 1711 | handle->h_sync = 1; | 1711 | handle->h_sync = 1; |
| 1712 | 1712 | ||
| 1713 | inode = ext3_new_inode (handle, dir, mode); | 1713 | inode = ext3_new_inode (handle, dir, &dentry->d_name, mode); |
| 1714 | err = PTR_ERR(inode); | 1714 | err = PTR_ERR(inode); |
| 1715 | if (!IS_ERR(inode)) { | 1715 | if (!IS_ERR(inode)) { |
| 1716 | inode->i_op = &ext3_file_inode_operations; | 1716 | inode->i_op = &ext3_file_inode_operations; |
| @@ -1746,7 +1746,7 @@ retry: | |||
| 1746 | if (IS_DIRSYNC(dir)) | 1746 | if (IS_DIRSYNC(dir)) |
| 1747 | handle->h_sync = 1; | 1747 | handle->h_sync = 1; |
| 1748 | 1748 | ||
| 1749 | inode = ext3_new_inode (handle, dir, mode); | 1749 | inode = ext3_new_inode (handle, dir, &dentry->d_name, mode); |
| 1750 | err = PTR_ERR(inode); | 1750 | err = PTR_ERR(inode); |
| 1751 | if (!IS_ERR(inode)) { | 1751 | if (!IS_ERR(inode)) { |
| 1752 | init_special_inode(inode, inode->i_mode, rdev); | 1752 | init_special_inode(inode, inode->i_mode, rdev); |
| @@ -1784,7 +1784,7 @@ retry: | |||
| 1784 | if (IS_DIRSYNC(dir)) | 1784 | if (IS_DIRSYNC(dir)) |
| 1785 | handle->h_sync = 1; | 1785 | handle->h_sync = 1; |
| 1786 | 1786 | ||
| 1787 | inode = ext3_new_inode (handle, dir, S_IFDIR | mode); | 1787 | inode = ext3_new_inode (handle, dir, &dentry->d_name, S_IFDIR | mode); |
| 1788 | err = PTR_ERR(inode); | 1788 | err = PTR_ERR(inode); |
| 1789 | if (IS_ERR(inode)) | 1789 | if (IS_ERR(inode)) |
| 1790 | goto out_stop; | 1790 | goto out_stop; |
| @@ -2206,7 +2206,7 @@ retry: | |||
| 2206 | if (IS_DIRSYNC(dir)) | 2206 | if (IS_DIRSYNC(dir)) |
| 2207 | handle->h_sync = 1; | 2207 | handle->h_sync = 1; |
| 2208 | 2208 | ||
| 2209 | inode = ext3_new_inode (handle, dir, S_IFLNK|S_IRWXUGO); | 2209 | inode = ext3_new_inode (handle, dir, &dentry->d_name, S_IFLNK|S_IRWXUGO); |
| 2210 | err = PTR_ERR(inode); | 2210 | err = PTR_ERR(inode); |
| 2211 | if (IS_ERR(inode)) | 2211 | if (IS_ERR(inode)) |
| 2212 | goto out_stop; | 2212 | goto out_stop; |
diff --git a/fs/ext3/xattr.h b/fs/ext3/xattr.h index 377fe720116..2be4f69bfa6 100644 --- a/fs/ext3/xattr.h +++ b/fs/ext3/xattr.h | |||
| @@ -128,10 +128,10 @@ exit_ext3_xattr(void) | |||
| 128 | 128 | ||
| 129 | #ifdef CONFIG_EXT3_FS_SECURITY | 129 | #ifdef CONFIG_EXT3_FS_SECURITY |
| 130 | extern int ext3_init_security(handle_t *handle, struct inode *inode, | 130 | extern int ext3_init_security(handle_t *handle, struct inode *inode, |
| 131 | struct inode *dir); | 131 | struct inode *dir, const struct qstr *qstr); |
| 132 | #else | 132 | #else |
| 133 | static inline int ext3_init_security(handle_t *handle, struct inode *inode, | 133 | static inline int ext3_init_security(handle_t *handle, struct inode *inode, |
| 134 | struct inode *dir) | 134 | struct inode *dir, const struct qstr *qstr) |
| 135 | { | 135 | { |
| 136 | return 0; | 136 | return 0; |
| 137 | } | 137 | } |
diff --git a/fs/ext3/xattr_security.c b/fs/ext3/xattr_security.c index 03a99bfc59f..b8d9f83aa5c 100644 --- a/fs/ext3/xattr_security.c +++ b/fs/ext3/xattr_security.c | |||
| @@ -49,14 +49,15 @@ ext3_xattr_security_set(struct dentry *dentry, const char *name, | |||
| 49 | } | 49 | } |
| 50 | 50 | ||
| 51 | int | 51 | int |
| 52 | ext3_init_security(handle_t *handle, struct inode *inode, struct inode *dir) | 52 | ext3_init_security(handle_t *handle, struct inode *inode, struct inode *dir, |
| 53 | const struct qstr *qstr) | ||
| 53 | { | 54 | { |
| 54 | int err; | 55 | int err; |
| 55 | size_t len; | 56 | size_t len; |
| 56 | void *value; | 57 | void *value; |
| 57 | char *name; | 58 | char *name; |
| 58 | 59 | ||
| 59 | err = security_inode_init_security(inode, dir, &name, &value, &len); | 60 | err = security_inode_init_security(inode, dir, qstr, &name, &value, &len); |
| 60 | if (err) { | 61 | if (err) { |
| 61 | if (err == -EOPNOTSUPP) | 62 | if (err == -EOPNOTSUPP) |
| 62 | return 0; | 63 | return 0; |
