lkml.org 
[lkml]   [2020]   [Aug]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.4 029/152] btrfs: fix return value mixup in btrfs_get_extent
    Date
    From: Pavel Machek <pavel@denx.de>

    commit 881a3a11c2b858fe9b69ef79ac5ee9978a266dc9 upstream.

    btrfs_get_extent() sets variable ret, but out: error path expect error
    to be in variable err so the error code is lost.

    Fixes: 6bf9e4bd6a27 ("btrfs: inode: Verify inode mode to avoid NULL pointer dereference")
    CC: stable@vger.kernel.org # 5.4+
    Reviewed-by: Nikolay Borisov <nborisov@suse.com>
    Signed-off-by: Pavel Machek (CIP) <pavel@denx.de>
    Reviewed-by: David Sterba <dsterba@suse.com>
    Signed-off-by: David Sterba <dsterba@suse.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

    ---
    fs/btrfs/inode.c | 2 +-
    1 file changed, 1 insertion(+), 1 deletion(-)

    --- a/fs/btrfs/inode.c
    +++ b/fs/btrfs/inode.c
    @@ -7194,7 +7194,7 @@ struct extent_map *btrfs_get_extent(stru
    extent_type == BTRFS_FILE_EXTENT_PREALLOC) {
    /* Only regular file could have regular/prealloc extent */
    if (!S_ISREG(inode->vfs_inode.i_mode)) {
    - ret = -EUCLEAN;
    + err = -EUCLEAN;
    btrfs_crit(fs_info,
    "regular/prealloc extent found for non-regular inode %llu",
    btrfs_ino(inode));

    \
     
     \ /
      Last update: 2020-08-20 14:45    [W:2.267 / U:0.016 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site