xfs
[Top] [All Lists]

Re: [PATCH 4/5] xfs_repair: don't ASSERT on corrupt ftype

To: Eric Sandeen <sandeen@xxxxxxxxxx>
Subject: Re: [PATCH 4/5] xfs_repair: don't ASSERT on corrupt ftype
From: Dave Chinner <david@xxxxxxxxxxxxx>
Date: Mon, 8 Sep 2014 10:10:44 +1000
Cc: xfs@xxxxxxxxxxx
Delivered-to: xfs@xxxxxxxxxxx
In-reply-to: <1410108065-18156-5-git-send-email-sandeen@xxxxxxxxxx>
References: <1410108065-18156-1-git-send-email-sandeen@xxxxxxxxxx> <1410108065-18156-5-git-send-email-sandeen@xxxxxxxxxx>
User-agent: Mutt/1.5.21 (2010-09-15)
On Sun, Sep 07, 2014 at 11:41:04AM -0500, Eric Sandeen wrote:
> xfs_dir3_dirent_get_ftype() gets the file type
> off disk, but ASSERTs if it's invalid:
> 
>       ASSERT(type < XFS_DIR3_FT_MAX);
> 
> This might be cut & paste from
> xfs_dir3_dirent_put_ftype which should be checking
> that it's not been passed bad values, but we
> shouldn't ASSERT on bad values read from disk.
> 
> Signed-off-by: Eric Sandeen <sandeen@xxxxxxxxxx>
> ---
>  include/xfs_da_format.h |    1 -
>  1 files changed, 0 insertions(+), 1 deletions(-)
> 
> diff --git a/include/xfs_da_format.h b/include/xfs_da_format.h
> index 89a1a21..11f1420 100644
> --- a/include/xfs_da_format.h
> +++ b/include/xfs_da_format.h
> @@ -561,7 +561,6 @@ xfs_dir3_dirent_get_ftype(
>       if (xfs_sb_version_hasftype(&mp->m_sb)) {
>               __uint8_t       type = dep->name[dep->namelen];
>  
> -             ASSERT(type < XFS_DIR3_FT_MAX);
>               if (type < XFS_DIR3_FT_MAX)
>                       return type;

Needs to be fixed kernel-side first.

Cheers,

Dave.
-- 
Dave Chinner
david@xxxxxxxxxxxxx

<Prev in Thread] Current Thread [Next in Thread>