From: Guenter Roeck <linux@roeck-us.net>
To: Christoph Hellwig <hch@lst.de>
Cc: "Ryusuke Konishi" <konishi.ryusuke@gmail.com>,
"Jens Axboe" <axboe@kernel.dk>,
linux-block@vger.kernel.org, linux-nfs@vger.kernel.org,
linux-nilfs <linux-nilfs@vger.kernel.org>,
"Mike Snitzer" <snitzer@redhat.com>,
"Philipp Reisner" <philipp.reisner@linbit.com>,
"Konstantin Komarov" <almaz.alexandrovich@paragon-software.com>,
"Roger Pau Monné" <roger.pau@citrix.co>,
"device-mapper development" <dm-devel@redhat.com>,
"Md . Haris Iqbal" <haris.iqbal@ionos.com>,
"Lars Ellenberg" <lars.ellenberg@linbit.com>,
linux-fsdevel@vger.kernel.org, xen-devel@lists.xenproject.org,
"Andrew Morton" <akpm@linux-foundation.org>,
ntfs3@lists.linux.dev, "Jack Wang" <jinpu.wang@ionos.com>,
"Pavel Begunkov" <asml.silence@gmail.com>,
drbd-dev@lists.linbit.com
Subject: Re: [dm-devel] [PATCH 01/19] fs: remove mpage_alloc
Date: Wed, 23 Mar 2022 08:43:19 -0700 [thread overview]
Message-ID: <20220323154319.GA2268247@roeck-us.net> (raw)
On Wed, Mar 23, 2022 at 07:42:48AM +0100, Christoph Hellwig wrote:
> On Wed, Mar 23, 2022 at 06:38:22AM +0900, Ryusuke Konishi wrote:
> > This looks because the mask of GFP_KERNEL is removed along with
> > the removal of mpage_alloc().
> >
>
> > The default value of the gfp flag is set to GFP_HIGHUSER_MOVABLE by
> > inode_init_always().
> > So, __GFP_HIGHMEM hits the gfp warning at bio_alloc() that
> > do_mpage_readpage() calls.
>
> Yeah. Let's try this to match the iomap code:
>
> diff --git a/fs/mpage.c b/fs/mpage.c
> index 9ed1e58e8d70b..d465883edf719 100644
> --- a/fs/mpage.c
> +++ b/fs/mpage.c
> @@ -148,13 +148,11 @@ static struct bio *do_mpage_readpage(struct mpage_readpage_args *args)
> int op = REQ_OP_READ;
> unsigned nblocks;
> unsigned relative_block;
> - gfp_t gfp;
> + gfp_t gfp = mapping_gfp_constraint(page->mapping, GFP_KERNEL);
>
> if (args->is_readahead) {
> op |= REQ_RAHEAD;
> - gfp = readahead_gfp_mask(page->mapping);
> - } else {
> - gfp = mapping_gfp_constraint(page->mapping, GFP_KERNEL);
> + gfp |= __GFP_NORETRY | __GFP_NOWARN;
> }
>
> if (page_has_buffers(page))
That fixes the problem for me.
Tested-by: Guenter Roeck <linux@roeck-us.net>
Guenter
next reply other threads:[~2022-03-23 16:06 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-03-23 15:43 Guenter Roeck [this message]
-- strict thread matches above, loose matches on Subject: below --
2022-01-24 9:10 improve the bio allocation interface v2 Christoph Hellwig
2022-01-24 9:10 ` [PATCH 01/19] fs: remove mpage_alloc Christoph Hellwig
2022-03-22 21:19 ` [dm-devel] " Guenter Roeck
2022-03-22 21:38 ` Ryusuke Konishi
2022-03-23 6:42 ` Christoph Hellwig
2022-03-23 9:29 ` Ryusuke Konishi
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20220323154319.GA2268247@roeck-us.net \
--to=linux@roeck-us.net \
--cc=akpm@linux-foundation.org \
--cc=almaz.alexandrovich@paragon-software.com \
--cc=asml.silence@gmail.com \
--cc=axboe@kernel.dk \
--cc=dm-devel@redhat.com \
--cc=drbd-dev@lists.linbit.com \
--cc=haris.iqbal@ionos.com \
--cc=hch@lst.de \
--cc=jinpu.wang@ionos.com \
--cc=konishi.ryusuke@gmail.com \
--cc=lars.ellenberg@linbit.com \
--cc=linux-block@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-nfs@vger.kernel.org \
--cc=linux-nilfs@vger.kernel.org \
--cc=ntfs3@lists.linux.dev \
--cc=philipp.reisner@linbit.com \
--cc=roger.pau@citrix.co \
--cc=snitzer@redhat.com \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).