2018-10-05 05:19:10

by Sahitya Tummala

[permalink] [raw]
Subject: [PATCH 1/2] f2fs: do not update REQ_TIME in case of error conditions

The REQ_TIME should be updated only in case of success cases
as followed at all other places in the file system.

Signed-off-by: Sahitya Tummala <[email protected]>
---
fs/f2fs/dir.c | 2 +-
fs/f2fs/file.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/fs/f2fs/dir.c b/fs/f2fs/dir.c
index c77a580..e02db5d 100644
--- a/fs/f2fs/dir.c
+++ b/fs/f2fs/dir.c
@@ -655,9 +655,9 @@ int f2fs_do_tmpfile(struct inode *inode, struct inode *dir)
f2fs_put_page(page, 1);

clear_inode_flag(inode, FI_NEW_INODE);
+ f2fs_update_time(F2FS_I_SB(inode), REQ_TIME);
fail:
up_write(&F2FS_I(inode)->i_sem);
- f2fs_update_time(F2FS_I_SB(inode), REQ_TIME);
return err;
}

diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index b1aaa73..543c742 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -106,6 +106,7 @@ static vm_fault_t f2fs_vm_page_mkwrite(struct vm_fault *vmf)
SetPageUptodate(page);

f2fs_update_iostat(sbi, APP_MAPPED_IO, F2FS_BLKSIZE);
+ f2fs_update_time(sbi, REQ_TIME);

trace_f2fs_vm_page_mkwrite(page, DATA);
out_sem:
@@ -114,7 +115,6 @@ static vm_fault_t f2fs_vm_page_mkwrite(struct vm_fault *vmf)
f2fs_balance_fs(sbi, dn.node_changed);

sb_end_pagefault(inode->i_sb);
- f2fs_update_time(sbi, REQ_TIME);
err:
return block_page_mkwrite_return(err);
}
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.



2018-10-05 05:19:56

by Sahitya Tummala

[permalink] [raw]
Subject: [PATCH 2/2] f2fs: update REQ_TIME in f2fs_cross_rename()

Update REQ_TIME in the missing path - f2fs_cross_rename().

Signed-off-by: Sahitya Tummala <[email protected]>
---
fs/f2fs/namei.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
index a146327..e37af23 100644
--- a/fs/f2fs/namei.c
+++ b/fs/f2fs/namei.c
@@ -1154,6 +1154,8 @@ static int f2fs_cross_rename(struct inode *old_dir, struct dentry *old_dentry,

if (IS_DIRSYNC(old_dir) || IS_DIRSYNC(new_dir))
f2fs_sync_fs(sbi->sb, 1);
+
+ f2fs_update_time(sbi, REQ_TIME);
return 0;
out_new_dir:
if (new_dir_entry) {
--
Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a Linux Foundation Collaborative Project.


2018-10-15 11:54:05

by Chao Yu

[permalink] [raw]
Subject: Re: [PATCH 1/2] f2fs: do not update REQ_TIME in case of error conditions

On 2018/10/5 13:17, Sahitya Tummala wrote:
> The REQ_TIME should be updated only in case of success cases
> as followed at all other places in the file system.
>
> Signed-off-by: Sahitya Tummala <[email protected]>

Reviewed-by: Chao Yu <[email protected]>

Thanks,


2018-10-15 12:00:46

by Chao Yu

[permalink] [raw]
Subject: Re: [PATCH 2/2] f2fs: update REQ_TIME in f2fs_cross_rename()

On 2018/10/5 13:17, Sahitya Tummala wrote:
> Update REQ_TIME in the missing path - f2fs_cross_rename().

Needs to cover f2fs_rename() as well?

Thanks,

>
> Signed-off-by: Sahitya Tummala <[email protected]>
> ---
> fs/f2fs/namei.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
> index a146327..e37af23 100644
> --- a/fs/f2fs/namei.c
> +++ b/fs/f2fs/namei.c
> @@ -1154,6 +1154,8 @@ static int f2fs_cross_rename(struct inode *old_dir, struct dentry *old_dentry,
>
> if (IS_DIRSYNC(old_dir) || IS_DIRSYNC(new_dir))
> f2fs_sync_fs(sbi->sb, 1);
> +
> + f2fs_update_time(sbi, REQ_TIME);
> return 0;
> out_new_dir:
> if (new_dir_entry) {
>


2018-10-15 23:04:49

by Jaegeuk Kim

[permalink] [raw]
Subject: Re: [PATCH 2/2] f2fs: update REQ_TIME in f2fs_cross_rename()

On 10/15, Chao Yu wrote:
> On 2018/10/5 13:17, Sahitya Tummala wrote:
> > Update REQ_TIME in the missing path - f2fs_cross_rename().
>
> Needs to cover f2fs_rename() as well?

Hi, I've added this in f2fs_rename().

Thanks,

>
> Thanks,
>
> >
> > Signed-off-by: Sahitya Tummala <[email protected]>
> > ---
> > fs/f2fs/namei.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
> > index a146327..e37af23 100644
> > --- a/fs/f2fs/namei.c
> > +++ b/fs/f2fs/namei.c
> > @@ -1154,6 +1154,8 @@ static int f2fs_cross_rename(struct inode *old_dir, struct dentry *old_dentry,
> >
> > if (IS_DIRSYNC(old_dir) || IS_DIRSYNC(new_dir))
> > f2fs_sync_fs(sbi->sb, 1);
> > +
> > + f2fs_update_time(sbi, REQ_TIME);
> > return 0;
> > out_new_dir:
> > if (new_dir_entry) {
> >

2018-10-16 01:34:56

by Chao Yu

[permalink] [raw]
Subject: Re: [PATCH 2/2] f2fs: update REQ_TIME in f2fs_cross_rename()

On 2018/10/16 7:03, Jaegeuk Kim wrote:
> On 10/15, Chao Yu wrote:
>> On 2018/10/5 13:17, Sahitya Tummala wrote:
>>> Update REQ_TIME in the missing path - f2fs_cross_rename().
>>
>> Needs to cover f2fs_rename() as well?
>
> Hi, I've added this in f2fs_rename().

Oh, I see, it looks okay to me now. :)

Reviewed-by: Chao Yu <[email protected]>

Thanks,

>
> Thanks,
>
>>
>> Thanks,
>>
>>>
>>> Signed-off-by: Sahitya Tummala <[email protected]>
>>> ---
>>> fs/f2fs/namei.c | 2 ++
>>> 1 file changed, 2 insertions(+)
>>>
>>> diff --git a/fs/f2fs/namei.c b/fs/f2fs/namei.c
>>> index a146327..e37af23 100644
>>> --- a/fs/f2fs/namei.c
>>> +++ b/fs/f2fs/namei.c
>>> @@ -1154,6 +1154,8 @@ static int f2fs_cross_rename(struct inode *old_dir, struct dentry *old_dentry,
>>>
>>> if (IS_DIRSYNC(old_dir) || IS_DIRSYNC(new_dir))
>>> f2fs_sync_fs(sbi->sb, 1);
>>> +
>>> + f2fs_update_time(sbi, REQ_TIME);
>>> return 0;
>>> out_new_dir:
>>> if (new_dir_entry) {
>>>
>
> .
>