On Sun 22-03-15 19:17:49, Changwoo Min wrote:
> Instead of -ENOMEM, properly return -EIO udf_update_inode()
> error, similar/consistent to the rest of filesystems.
> 
> Signed-off-by: Changwoo Min <[email protected]>
  So I actually had a look how we treat results from udf_tgetblk(). The
truth is:
Once we return ENOMEM. Once we return EIO. Once we just return NULL from
the function and it will get eventually translated to something like EIO.
Once we just crash. Twice we just ignore the problem (as it is during
readahead). So saying there is any consistency among the callers of
udf_tgetblk() is just wrong.

But looking into when getblk() can fail to return the buffer, EIO is
probably a better return value. So I've take the patch.

                                                                Honza
> 
> ---
>  fs/udf/inode.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/udf/inode.c b/fs/udf/inode.c
> index a445d59..c758023 100644
> --- a/fs/udf/inode.c
> +++ b/fs/udf/inode.c
> @@ -1637,7 +1637,7 @@ static int udf_update_inode(struct inode *inode, int 
> do_sync)
>                       udf_get_lb_pblock(inode->i_sb, &iinfo->i_location, 0));
>       if (!bh) {
>               udf_debug("getblk failure\n");
> -             return -ENOMEM;
> +             return -EIO;
>       }
>  
>       lock_buffer(bh);
> -- 
> 1.9.1
> 
-- 
Jan Kara <[email protected]>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to