linux-f2fs-devel.lists.sourceforge.net archive mirror
 help / color / mirror / Atom feed
* [f2fs-dev] [PATCH -next v2] f2fs: remove unnecessary read for F2FS_FITS_IN_INODE
@ 2022-03-09  9:27 Jia Yang via Linux-f2fs-devel
  2022-03-09 10:13 ` Chao Yu
  0 siblings, 1 reply; 2+ messages in thread
From: Jia Yang via Linux-f2fs-devel @ 2022-03-09  9:27 UTC (permalink / raw)
  To: chao, jaegeuk; +Cc: linux-f2fs-devel

F2FS_FITS_IN_INODE only cares the type of f2fs inode, so there
is no need to read node page of f2fs inode.

Signed-off-by: Jia Yang <jiayang5@huawei.com>
---
v2:
- initialize ri with NULL
---
 fs/f2fs/file.c | 15 ++++-----------
 1 file changed, 4 insertions(+), 11 deletions(-)

diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
index cfdc41f87f5d..a8d9104d293c 100644
--- a/fs/f2fs/file.c
+++ b/fs/f2fs/file.c
@@ -812,7 +812,7 @@ int f2fs_getattr(struct user_namespace *mnt_userns, const struct path *path,
 {
 	struct inode *inode = d_inode(path->dentry);
 	struct f2fs_inode_info *fi = F2FS_I(inode);
-	struct f2fs_inode *ri;
+	struct f2fs_inode *ri = NULL;
 	unsigned int flags;
 
 	if (f2fs_has_extra_attr(inode) &&
@@ -2999,7 +2999,7 @@ static int f2fs_ioc_setproject(struct inode *inode, __u32 projid)
 {
 	struct f2fs_inode_info *fi = F2FS_I(inode);
 	struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
-	struct page *ipage;
+	struct f2fs_inode *ri = NULL;
 	kprojid_t kprojid;
 	int err;
 
@@ -3023,17 +3023,10 @@ static int f2fs_ioc_setproject(struct inode *inode, __u32 projid)
 	if (IS_NOQUOTA(inode))
 		return err;
 
-	ipage = f2fs_get_node_page(sbi, inode->i_ino);
-	if (IS_ERR(ipage))
-		return PTR_ERR(ipage);
 
-	if (!F2FS_FITS_IN_INODE(F2FS_INODE(ipage), fi->i_extra_isize,
-								i_projid)) {
-		err = -EOVERFLOW;
-		f2fs_put_page(ipage, 1);
-		return err;
+	if (!F2FS_FITS_IN_INODE(ri, fi->i_extra_isize, i_projid)) {
+		return -EOVERFLOW;
 	}
-	f2fs_put_page(ipage, 1);
 
 	err = f2fs_dquot_initialize(inode);
 	if (err)
-- 
2.22.0



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

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [f2fs-dev] [PATCH -next v2] f2fs: remove unnecessary read for F2FS_FITS_IN_INODE
  2022-03-09  9:27 [f2fs-dev] [PATCH -next v2] f2fs: remove unnecessary read for F2FS_FITS_IN_INODE Jia Yang via Linux-f2fs-devel
@ 2022-03-09 10:13 ` Chao Yu
  0 siblings, 0 replies; 2+ messages in thread
From: Chao Yu @ 2022-03-09 10:13 UTC (permalink / raw)
  To: Jia Yang, jaegeuk; +Cc: linux-f2fs-devel

On 2022/3/9 17:27, Jia Yang via Linux-f2fs-devel wrote:
> F2FS_FITS_IN_INODE only cares the type of f2fs inode, so there
> is no need to read node page of f2fs inode.
> 
> Signed-off-by: Jia Yang <jiayang5@huawei.com>
> ---
> v2:
> - initialize ri with NULL
> ---
>   fs/f2fs/file.c | 15 ++++-----------
>   1 file changed, 4 insertions(+), 11 deletions(-)
> 
> diff --git a/fs/f2fs/file.c b/fs/f2fs/file.c
> index cfdc41f87f5d..a8d9104d293c 100644
> --- a/fs/f2fs/file.c
> +++ b/fs/f2fs/file.c
> @@ -812,7 +812,7 @@ int f2fs_getattr(struct user_namespace *mnt_userns, const struct path *path,
>   {
>   	struct inode *inode = d_inode(path->dentry);
>   	struct f2fs_inode_info *fi = F2FS_I(inode);
> -	struct f2fs_inode *ri;
> +	struct f2fs_inode *ri = NULL;
>   	unsigned int flags;
>   
>   	if (f2fs_has_extra_attr(inode) &&
> @@ -2999,7 +2999,7 @@ static int f2fs_ioc_setproject(struct inode *inode, __u32 projid)
>   {
>   	struct f2fs_inode_info *fi = F2FS_I(inode);
>   	struct f2fs_sb_info *sbi = F2FS_I_SB(inode);
> -	struct page *ipage;
> +	struct f2fs_inode *ri = NULL;
>   	kprojid_t kprojid;
>   	int err;
>   
> @@ -3023,17 +3023,10 @@ static int f2fs_ioc_setproject(struct inode *inode, __u32 projid)
>   	if (IS_NOQUOTA(inode))
>   		return err;
>   
> -	ipage = f2fs_get_node_page(sbi, inode->i_ino);
> -	if (IS_ERR(ipage))
> -		return PTR_ERR(ipage);
>   
> -	if (!F2FS_FITS_IN_INODE(F2FS_INODE(ipage), fi->i_extra_isize,
> -								i_projid)) {
> -		err = -EOVERFLOW;
> -		f2fs_put_page(ipage, 1);
> -		return err;
> +	if (!F2FS_FITS_IN_INODE(ri, fi->i_extra_isize, i_projid)) {
> +		return -EOVERFLOW;
>   	}

checkpatch.pl triggers a warning as below:

WARNING: braces {} are not necessary for single statement blocks

Thanks,

> -	f2fs_put_page(ipage, 1);
>   
>   	err = f2fs_dquot_initialize(inode);
>   	if (err)


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

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2022-03-09 10:13 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-03-09  9:27 [f2fs-dev] [PATCH -next v2] f2fs: remove unnecessary read for F2FS_FITS_IN_INODE Jia Yang via Linux-f2fs-devel
2022-03-09 10:13 ` Chao Yu

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).