On 2017/3/11 2:50, Jaegeuk Kim wrote:
> On 03/10, Chao Yu wrote:
>> We should only align start offset of bio with defined IO_SIZE for below
>> conditions:
>> a. write IOs
>> b. Out-place-update
>> c. non-meta page
>>
>> Signed-off-by: Chao Yu <yuch...@huawei.com>
>> ---
>>  fs/f2fs/data.c | 4 +++-
>>  1 file changed, 3 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
>> index 1375fef11146..3e6b0cc5e36a 100644
>> --- a/fs/f2fs/data.c
>> +++ b/fs/f2fs/data.c
>> @@ -395,7 +395,9 @@ int f2fs_submit_page_mbio(struct f2fs_io_info *fio)
>>              __submit_merged_bio(io);
>>  alloc_new:
>>      if (io->bio == NULL) {
>> -            if ((fio->type == DATA || fio->type == NODE) &&
>> +            if (!is_read && (fio->type == DATA || fio->type == NODE) &&
>> +                            bio_page->mapping != META_MAPPING(sbi) &&
> 
> BUG_ON(), since it's covered by fio->type == DATA || fio->type == NODE.

Oh, the condition I added here is wrong, since move_encrypted_block will add a
meta page into DATA type bio cache, also we can not add a BUG_ON here.

> 
>> +                            fio->new_blkaddr != fio->old_blkaddr &&
> 
> BUG_ON(), since LFS mount option doesn't allow any in-place updates.

You're right. :)

> 
>>                              fio->new_blkaddr & F2FS_IO_SIZE_MASK(sbi)) {
> 
> So, is_read is worth to check?

Yes.

I will fix them and resend v2.

Thanks,

> 
> Thanks,
> 
>>                      err = -EAGAIN;
>>                      if (!is_read)
>> -- 
>> 2.8.2.295.g3f1c1d0
> 
> .
> 


------------------------------------------------------------------------------
Announcing the Oxford Dictionaries API! The API offers world-renowned
dictionary content that is easy and intuitive to access. Sign up for an
account today to start using our lexical data to power your apps and
projects. Get started today and enter our developer competition.
http://sdm.link/oxford
_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to