Re: [PATCH 13/24] ufs: Remove checks for PageError

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> --- a/fs/ufs/dir.c
> +++ b/fs/ufs/dir.c
> @@ -193,7 +193,7 @@ static struct page *ufs_get_page(struct inode *dir, unsigned long n)
>  	if (!IS_ERR(page)) {
>  		kmap(page);
>  		if (unlikely(!PageChecked(page))) {
> -			if (PageError(page) || !ufs_check_page(page))
> +			if (!ufs_check_page(page))
>  				goto fail;
>  		}

Unrelated note:  doing the PageChecked check inside of ufs_check_page
wuld really help readability for the casual reader.

>  	}
> diff --git a/fs/ufs/util.c b/fs/ufs/util.c
> index 4fa633f84274..08ddf41eaaad 100644
> --- a/fs/ufs/util.c
> +++ b/fs/ufs/util.c
> @@ -264,17 +264,6 @@ struct page *ufs_get_locked_page(struct address_space *mapping,
>  			put_page(page);
>  			return NULL;
>  		}
> -
> -		if (!PageUptodate(page) || PageError(page)) {
> -			unlock_page(page);
> -			put_page(page);
> -
> -			printk(KERN_ERR "ufs_change_blocknr: "
> -			       "can not read page: ino %lu, index: %lu\n",
> -			       inode->i_ino, index);
> -
> -			return ERR_PTR(-EIO);
> -		}

This looks good.  But this code could use some more love nd a removal
of the find_lock_page call by always just using read_mapping_page.
Especially a the truncate protection should apply equally to cached
pages and not just those freshly read off the disk.

But I guess for now this looks good:

Reviewed-by: Christoph Hellwig <hch@xxxxxx>




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux