On 2020/6/30 12:45, Jia Yang wrote:
> The parameter "op_flags" is not used in f2fs_get_read_data_page(),
> so it can be removed.

I don't think so, there is one missing case as below, in where op_flag
was set incorrectly in f2fs_grab_read_bio(), we need to add one more
parameter to pass op_flag value.

- gc_data_segment
 - f2fs_get_read_data_page(.., op_flag = REQ_RAHEAD,..)
  - f2fs_submit_page_read
   - f2fs_grab_read_bio(.., op_flag = 0, ..)

> 
> Signed-off-by: Jia Yang <jiaya...@huawei.com>
> ---
>  fs/f2fs/data.c | 6 +++---
>  fs/f2fs/f2fs.h | 2 +-
>  fs/f2fs/gc.c   | 2 +-
>  3 files changed, 5 insertions(+), 5 deletions(-)
> 
> diff --git a/fs/f2fs/data.c b/fs/f2fs/data.c
> index 326c63879ddc..f1b85185e9df 100644
> --- a/fs/f2fs/data.c
> +++ b/fs/f2fs/data.c
> @@ -1157,7 +1157,7 @@ int f2fs_get_block(struct dnode_of_data *dn, pgoff_t 
> index)
>  }
>  
>  struct page *f2fs_get_read_data_page(struct inode *inode, pgoff_t index,
> -                                             int op_flags, bool for_write)
> +                                             bool for_write)
>  {
>       struct address_space *mapping = inode->i_mapping;
>       struct dnode_of_data dn;
> @@ -1237,7 +1237,7 @@ struct page *f2fs_find_data_page(struct inode *inode, 
> pgoff_t index)
>               return page;
>       f2fs_put_page(page, 0);
>  
> -     page = f2fs_get_read_data_page(inode, index, 0, false);
> +     page = f2fs_get_read_data_page(inode, index, false);
>       if (IS_ERR(page))
>               return page;
>  
> @@ -1263,7 +1263,7 @@ struct page *f2fs_get_lock_data_page(struct inode 
> *inode, pgoff_t index,
>       struct address_space *mapping = inode->i_mapping;
>       struct page *page;
>  repeat:
> -     page = f2fs_get_read_data_page(inode, index, 0, for_write);
> +     page = f2fs_get_read_data_page(inode, index, for_write);
>       if (IS_ERR(page))
>               return page;
>  
> diff --git a/fs/f2fs/f2fs.h b/fs/f2fs/f2fs.h
> index b35a50f4953c..41ef50714a39 100644
> --- a/fs/f2fs/f2fs.h
> +++ b/fs/f2fs/f2fs.h
> @@ -3441,7 +3441,7 @@ int f2fs_get_block(struct dnode_of_data *dn, pgoff_t 
> index);
>  int f2fs_preallocate_blocks(struct kiocb *iocb, struct iov_iter *from);
>  int f2fs_reserve_block(struct dnode_of_data *dn, pgoff_t index);
>  struct page *f2fs_get_read_data_page(struct inode *inode, pgoff_t index,
> -                     int op_flags, bool for_write);
> +                     bool for_write);
>  struct page *f2fs_find_data_page(struct inode *inode, pgoff_t index);
>  struct page *f2fs_get_lock_data_page(struct inode *inode, pgoff_t index,
>                       bool for_write);
> diff --git a/fs/f2fs/gc.c b/fs/f2fs/gc.c
> index 5b95d5a146eb..487f75d9136c 100644
> --- a/fs/f2fs/gc.c
> +++ b/fs/f2fs/gc.c
> @@ -1094,7 +1094,7 @@ static int gc_data_segment(struct f2fs_sb_info *sbi, 
> struct f2fs_summary *sum,
>                       }
>  
>                       data_page = f2fs_get_read_data_page(inode,
> -                                             start_bidx, REQ_RAHEAD, true);
> +                                             start_bidx, true);
>                       up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]);
>                       if (IS_ERR(data_page)) {
>                               iput(inode);
> 


_______________________________________________
Linux-f2fs-devel mailing list
Linux-f2fs-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-f2fs-devel

Reply via email to