diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-06-05 00:12:39 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-06-05 00:12:39 -0400 |
commit | 7f0d384cafabfbb56663ee6944c18fc0450fc5d6 (patch) | |
tree | bf68721fb65b64392177f498a9ba61ef027b2b3d /fs | |
parent | 90ec7819737d42a0ad1c2df1ff56016facae3c6e (diff) | |
parent | 01afaf61983d08ed1c9e5e8f2fcf4f40e9008033 (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
Minix: Clean up left over label
fix truncate inode time modification breakage
fix setattr error handling in sysfs, configfs
fcntl: return -EFAULT if copy_to_user fails
wrong type for 'magic' argument in simple_fill_super()
fix the deadlock in qib_fs
mqueue doesn't need make_bad_inode()
Diffstat (limited to 'fs')
-rw-r--r-- | fs/ext2/inode.c | 2 | ||||
-rw-r--r-- | fs/fcntl.c | 7 | ||||
-rw-r--r-- | fs/libfs.c | 3 | ||||
-rw-r--r-- | fs/minix/dir.c | 4 |
4 files changed, 8 insertions, 8 deletions
diff --git a/fs/ext2/inode.c b/fs/ext2/inode.c index 19214435b752..3675088cb88c 100644 --- a/fs/ext2/inode.c +++ b/fs/ext2/inode.c | |||
@@ -1552,7 +1552,7 @@ int ext2_setattr(struct dentry *dentry, struct iattr *iattr) | |||
1552 | if (error) | 1552 | if (error) |
1553 | return error; | 1553 | return error; |
1554 | } | 1554 | } |
1555 | if (iattr->ia_valid & ATTR_SIZE) { | 1555 | if (iattr->ia_valid & ATTR_SIZE && iattr->ia_size != inode->i_size) { |
1556 | error = ext2_setsize(inode, iattr->ia_size); | 1556 | error = ext2_setsize(inode, iattr->ia_size); |
1557 | if (error) | 1557 | if (error) |
1558 | return error; | 1558 | return error; |
diff --git a/fs/fcntl.c b/fs/fcntl.c index f74d270ba155..51e11bf5708f 100644 --- a/fs/fcntl.c +++ b/fs/fcntl.c | |||
@@ -274,7 +274,7 @@ static int f_setown_ex(struct file *filp, unsigned long arg) | |||
274 | 274 | ||
275 | ret = copy_from_user(&owner, owner_p, sizeof(owner)); | 275 | ret = copy_from_user(&owner, owner_p, sizeof(owner)); |
276 | if (ret) | 276 | if (ret) |
277 | return ret; | 277 | return -EFAULT; |
278 | 278 | ||
279 | switch (owner.type) { | 279 | switch (owner.type) { |
280 | case F_OWNER_TID: | 280 | case F_OWNER_TID: |
@@ -332,8 +332,11 @@ static int f_getown_ex(struct file *filp, unsigned long arg) | |||
332 | } | 332 | } |
333 | read_unlock(&filp->f_owner.lock); | 333 | read_unlock(&filp->f_owner.lock); |
334 | 334 | ||
335 | if (!ret) | 335 | if (!ret) { |
336 | ret = copy_to_user(owner_p, &owner, sizeof(owner)); | 336 | ret = copy_to_user(owner_p, &owner, sizeof(owner)); |
337 | if (ret) | ||
338 | ret = -EFAULT; | ||
339 | } | ||
337 | return ret; | 340 | return ret; |
338 | } | 341 | } |
339 | 342 | ||
diff --git a/fs/libfs.c b/fs/libfs.c index 09e1016eb774..dcaf972cbf1b 100644 --- a/fs/libfs.c +++ b/fs/libfs.c | |||
@@ -489,7 +489,8 @@ int simple_write_end(struct file *file, struct address_space *mapping, | |||
489 | * unique inode values later for this filesystem, then you must take care | 489 | * unique inode values later for this filesystem, then you must take care |
490 | * to pass it an appropriate max_reserved value to avoid collisions. | 490 | * to pass it an appropriate max_reserved value to avoid collisions. |
491 | */ | 491 | */ |
492 | int simple_fill_super(struct super_block *s, int magic, struct tree_descr *files) | 492 | int simple_fill_super(struct super_block *s, unsigned long magic, |
493 | struct tree_descr *files) | ||
493 | { | 494 | { |
494 | struct inode *inode; | 495 | struct inode *inode; |
495 | struct dentry *root; | 496 | struct dentry *root; |
diff --git a/fs/minix/dir.c b/fs/minix/dir.c index 91969589131c..1dbf921ca44b 100644 --- a/fs/minix/dir.c +++ b/fs/minix/dir.c | |||
@@ -75,10 +75,6 @@ static struct page * dir_get_page(struct inode *dir, unsigned long n) | |||
75 | if (!IS_ERR(page)) | 75 | if (!IS_ERR(page)) |
76 | kmap(page); | 76 | kmap(page); |
77 | return page; | 77 | return page; |
78 | |||
79 | fail: | ||
80 | dir_put_page(page); | ||
81 | return ERR_PTR(-EIO); | ||
82 | } | 78 | } |
83 | 79 | ||
84 | static inline void *minix_next_entry(void *de, struct minix_sb_info *sbi) | 80 | static inline void *minix_next_entry(void *de, struct minix_sb_info *sbi) |