2021-05-13 11:44:30

by David Howells

[permalink] [raw]
Subject: [PATCH] netfs: Pass flags through to grab_cache_page_write_begin()

In netfs_write_begin(), pass the AOP flags through to
grab_cache_page_write_begin() so that a request to use GFP_NOFS is honoured.

Fixes: e1b1240c1ff5 ("netfs: Add write_begin helper")
Reported-by: Matthew Wilcox (Oracle) <[email protected]>
Signed-off-by: David Howells <[email protected]>
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
cc: [email protected]
---

fs/netfs/read_helper.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/netfs/read_helper.c b/fs/netfs/read_helper.c
index 193841d03de0..725614625ed4 100644
--- a/fs/netfs/read_helper.c
+++ b/fs/netfs/read_helper.c
@@ -1068,7 +1068,7 @@ int netfs_write_begin(struct file *file, struct address_space *mapping,
DEFINE_READAHEAD(ractl, file, NULL, mapping, index);

retry:
- page = grab_cache_page_write_begin(mapping, index, 0);
+ page = grab_cache_page_write_begin(mapping, index, flags);
if (!page)
return -ENOMEM;





2021-05-13 15:14:17

by Jeffrey Layton

[permalink] [raw]
Subject: Re: [PATCH] netfs: Pass flags through to grab_cache_page_write_begin()

On Thu, 2021-05-13 at 11:49 +0100, David Howells wrote:
> In netfs_write_begin(), pass the AOP flags through to
> grab_cache_page_write_begin() so that a request to use GFP_NOFS is honoured.
>
> Fixes: e1b1240c1ff5 ("netfs: Add write_begin helper")
> Reported-by: Matthew Wilcox (Oracle) <[email protected]>
> Signed-off-by: David Howells <[email protected]>
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> cc: [email protected]
> ---
>
> fs/netfs/read_helper.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/netfs/read_helper.c b/fs/netfs/read_helper.c
> index 193841d03de0..725614625ed4 100644
> --- a/fs/netfs/read_helper.c
> +++ b/fs/netfs/read_helper.c
> @@ -1068,7 +1068,7 @@ int netfs_write_begin(struct file *file, struct address_space *mapping,
> DEFINE_READAHEAD(ractl, file, NULL, mapping, index);
>
> retry:
> - page = grab_cache_page_write_begin(mapping, index, 0);
> + page = grab_cache_page_write_begin(mapping, index, flags);
> if (!page)
> return -ENOMEM;
>
>
>

Reviewed-by: Jeff Layton <[email protected]>