On 2013/12/16 16:10, Andrew Morton wrote:
> On Tue, 26 Nov 2013 16:39:09 +0800 Rui Xiang <rui.xi...@huawei.com> wrote:
> 
>> Here ret always equals 0, so SetPageUptodate directly.
>>
>> ...
>>
>> --- a/fs/romfs/super.c
>> +++ b/fs/romfs/super.c
>> @@ -129,8 +129,7 @@ static int romfs_readpage(struct file *file, struct page 
>> *page)
>>  
>>      if (fillsize < PAGE_SIZE)
>>              memset(buf + fillsize, 0, PAGE_SIZE - fillsize);
>> -    if (ret == 0)
>> -            SetPageUptodate(page);
>> +    SetPageUptodate(page);
>>  
>>      flush_dcache_page(page);
>>      kunmap(page);
> 
> Nope, `ret' can be -EIO:
> 
>       ret = 0;
>       if (offset < size) {
>               size -= offset;
>               fillsize = size > PAGE_SIZE ? PAGE_SIZE : size;
> 
>               pos = ROMFS_I(inode)->i_dataoffset + offset;
> 
>               ret = romfs_dev_read(inode->i_sb, pos, buf, fillsize);
>               if (ret < 0) {
>                       SetPageError(page);
>                       fillsize = 0;
> -->>                  ret = -EIO;
>               }
>       }
> 
>       if (fillsize < PAGE_SIZE)
>               memset(buf + fillsize, 0, PAGE_SIZE - fillsize);
>       if (ret == 0)
>               SetPageUptodate(page);
> 
> 
> It was a bit rude to overwrite the romfs_dev_read() return code though.
> 

Ah, my fault. Ignore that, please.



--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
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