From: Roman Gushchin <guro@fb.com>
To: "Theodore Y. Ts'o" <tytso@mit.edu>
Cc: <linux-fsdevel@vger.kernel.org>, <linux-ext4@vger.kernel.org>,
<linux-kernel@vger.kernel.org>,
Alexander Viro <viro@zeniv.linux.org.uk>,
Andreas Dilger <adilger.kernel@dilger.ca>,
Andrew Perepechko <andrew.perepechko@seagate.com>,
Gioh Kim <gioh.kim@lge.com>, Jan Kara <jack@suse.cz>
Subject: Re: [PATCH v2] ext4: use non-movable memory for superblock readahead
Date: Fri, 10 Apr 2020 09:12:18 -0700 [thread overview]
Message-ID: <20200410161218.GA14685@carbon.lan> (raw)
In-Reply-To: <20200410032344.GI45598@mit.edu>
On Thu, Apr 09, 2020 at 11:23:44PM -0400, Theodore Y. Ts'o wrote:
> On Fri, Feb 28, 2020 at 04:14:11PM -0800, Roman Gushchin wrote:
> > Since commit a8ac900b8163 ("ext4: use non-movable memory for the
> > superblock") buffers for ext4 superblock were allocated using
> > the sb_bread_unmovable() helper which allocated buffer heads
> > out of non-movable memory blocks. It was necessarily to not block
> > page migrations and do not cause cma allocation failures.
> >
> > However commit 85c8f176a611 ("ext4: preload block group descriptors")
> > broke this by introducing pre-reading of the ext4 superblock.
> > The problem is that __breadahead() is using __getblk() underneath,
> > which allocates buffer heads out of movable memory.
> >
> > It resulted in page migration failures I've seen on a machine
> > with an ext4 partition and a preallocated cma area.
> >
> > Fix this by introducing sb_breadahead_unmovable() and
> > __breadahead_gfp() helpers which use non-movable memory for buffer
> > head allocations and use them for the ext4 superblock readahead.
>
> Applied, thanks. Apologies for not picking this up earlier.
>
> - Ted
Thank you!
Roman
prev parent reply other threads:[~2020-04-10 16:12 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-02-29 0:14 [PATCH v2] ext4: use non-movable memory for superblock readahead Roman Gushchin
2020-02-29 7:49 ` Andreas Dilger
2020-03-02 16:37 ` Roman Gushchin
2020-03-03 22:17 ` Roman Gushchin
2020-04-06 17:20 ` Roman Gushchin
2020-04-10 3:23 ` Theodore Y. Ts'o
2020-04-10 16:12 ` Roman Gushchin [this message]
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=20200410161218.GA14685@carbon.lan \
--to=guro@fb.com \
--cc=adilger.kernel@dilger.ca \
--cc=andrew.perepechko@seagate.com \
--cc=gioh.kim@lge.com \
--cc=jack@suse.cz \
--cc=linux-ext4@vger.kernel.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=tytso@mit.edu \
--cc=viro@zeniv.linux.org.uk \
/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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.