From: Yang Shi <shy828301@gmail.com>
To: Hugh Dickins <hughd@google.com>
Cc: Zi Yan <ziy@nvidia.com>,
"Kirill A. Shutemov" <kirill@shutemov.name>,
Matthew Wilcox <willy@infradead.org>,
Kent Overstreet <kent.overstreet@gmail.com>,
Linux FS-devel Mailing List <linux-fsdevel@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Linux MM <linux-mm@kvack.org>,
Johannes Weiner <hannes@cmpxchg.org>,
Linus Torvalds <torvalds@linux-foundation.org>,
Andrew Morton <akpm@linux-foundation.org>,
"Darrick J. Wong" <djwong@kernel.org>,
Christoph Hellwig <hch@infradead.org>,
David Howells <dhowells@redhat.com>,
Mike Kravetz <mike.kravetz@oracle.com>
Subject: Re: Mapcount of subpages
Date: Thu, 23 Sep 2021 18:11:19 -0700 [thread overview]
Message-ID: <CAHbLzkp__irFweEZMEM-CMF_-XQpJcW1dNDFo=RnqaSTGtdJkg@mail.gmail.com> (raw)
In-Reply-To: <77b59314-5593-1a2e-293c-b66e8235ad@google.com>
On Thu, Sep 23, 2021 at 4:49 PM Hugh Dickins <hughd@google.com> wrote:
>
> On Thu, 23 Sep 2021, Zi Yan wrote:
> > On 23 Sep 2021, at 17:54, Yang Shi wrote:
> > > On Thu, Sep 23, 2021 at 2:10 PM Hugh Dickins <hughd@google.com> wrote:
> > >>
> > >> NR_FILE_MAPPED being used for /proc/meminfo's "Mapped:" and a couple
> > >> of other such stats files, and for a reclaim heuristic in mm/vmscan.c.
> > >>
> > >> Allow ourselves more slack in NR_FILE_MAPPED accounting (either count
> > >> each pte as if it mapped the whole THP, or don't count a THP's ptes
> > >> at all - you opted for the latter in the "Mlocked:" accounting),
> > >> and I suspect subpage _mapcount could be abandoned.
> > >
> > > AFAIK, partial THP unmap may need the _mapcount information of every
> > > subpage otherwise the deferred split can't know what subpages could be
> > > freed.
>
> I believe Yang Shi is right insofar as the decision on whether it's worth
> queuing for deferred split is being done based on those subpage _mapcounts.
> That is a use I had not considered, and I've given no thought to how
> important or not it is.
Anyway deferred split is anon THP specific. We don't have to worry
about this for file THP. So your suggestion about just counting total
mapcount seems feasible to me for file THP at least.
>
> >
> > Could we just scan page tables of a THP during deferred split process
> > instead? Deferred split is a slow path already, so maybe it can afford
> > the extra work.
>
> But unless I misunderstand, actually carrying out the deferred split
> already unmaps, uses migration entries, and remaps the remaining ptes:
> needing no help from subpage _mapcounts to do those, and free the rest.
>
> Hugh
next prev parent reply other threads:[~2021-09-24 1:11 UTC|newest]
Thread overview: 35+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-09-23 1:21 Struct page proposal Kent Overstreet
2021-09-23 3:23 ` Matthew Wilcox
2021-09-23 5:15 ` Kent Overstreet
2021-09-23 11:40 ` Mapcount of subpages Matthew Wilcox
2021-09-23 12:45 ` Kirill A. Shutemov
2021-09-23 21:10 ` Hugh Dickins
2021-09-23 21:54 ` Yang Shi
2021-09-23 22:23 ` Zi Yan
2021-09-23 23:48 ` Hugh Dickins
2021-09-24 0:25 ` Zi Yan
2021-09-24 0:57 ` Hugh Dickins
2021-09-24 1:11 ` Yang Shi [this message]
2021-09-24 1:31 ` Matthew Wilcox
2021-09-24 3:26 ` Yang Shi
2021-09-24 23:05 ` Kirill A. Shutemov
2021-09-23 18:56 ` Mike Kravetz
2021-09-23 9:03 ` Struct page proposal David Hildenbrand
2021-09-23 15:22 ` Kent Overstreet
2021-09-23 15:34 ` David Hildenbrand
2021-09-27 17:48 ` Vlastimil Babka
2021-09-27 17:53 ` Kent Overstreet
2021-09-27 18:34 ` Linus Torvalds
2021-09-27 20:45 ` David Hildenbrand
2021-09-27 18:05 ` Matthew Wilcox
2021-09-27 18:09 ` Kent Overstreet
2021-09-27 18:12 ` Matthew Wilcox
2021-09-27 18:16 ` David Hildenbrand
2021-09-27 18:53 ` Vlastimil Babka
2021-09-27 19:04 ` Linus Torvalds
2021-09-27 18:16 ` Kent Overstreet
2021-09-28 3:19 ` Matthew Wilcox
2021-09-27 19:07 ` Vlastimil Babka
2021-09-27 20:14 ` Kent Overstreet
2021-09-28 11:21 ` David Laight
2021-09-27 18:33 ` Kirill A. Shutemov
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='CAHbLzkp__irFweEZMEM-CMF_-XQpJcW1dNDFo=RnqaSTGtdJkg@mail.gmail.com' \
--to=shy828301@gmail.com \
--cc=akpm@linux-foundation.org \
--cc=dhowells@redhat.com \
--cc=djwong@kernel.org \
--cc=hannes@cmpxchg.org \
--cc=hch@infradead.org \
--cc=hughd@google.com \
--cc=kent.overstreet@gmail.com \
--cc=kirill@shutemov.name \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=mike.kravetz@oracle.com \
--cc=torvalds@linux-foundation.org \
--cc=willy@infradead.org \
--cc=ziy@nvidia.com \
/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