Hi!

> @@ -6993,6 +7010,14 @@ struct extent_map *btrfs_get_extent(struct btrfs_inode 
> *inode,
>       extent_start = found_key.offset;
>       if (found_type == BTRFS_FILE_EXTENT_REG ||
>           found_type == BTRFS_FILE_EXTENT_PREALLOC) {
> +             /* Only regular file could have regular/prealloc extent */
> +             if (!S_ISREG(inode->vfs_inode.i_mode)) {
> +                     ret = -EUCLEAN;
> +                     btrfs_crit(fs_info,
> +             "regular/prealloc extent found for non-regular inode %llu",
> +                                btrfs_ino(inode));
> +                     goto out;
> +             }

This sets ret, but function returns err. Fix was already submitted.

Best regards,
                                                                        Pavel
-- 
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) 
http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html

Attachment: signature.asc
Description: PGP signature

Reply via email to