lkml.org 
[lkml]   [2020]   [Dec]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [External] Re: [PATCH 5/9] mm: memcontrol: convert NR_FILE_THPS account to pages
On Sun, Dec 06, 2020 at 12:52:34AM +0800, Muchun Song wrote:
> On Sun, Dec 6, 2020 at 12:32 AM Greg KH <gregkh@linuxfoundation.org> wrote:
> >
> > On Sat, Dec 05, 2020 at 11:39:24PM +0800, Muchun Song wrote:
> > > On Sat, Dec 5, 2020 at 11:32 PM Greg KH <gregkh@linuxfoundation.org> wrote:
> > > >
> > > > On Sat, Dec 05, 2020 at 11:29:26PM +0800, Muchun Song wrote:
> > > > > On Sat, Dec 5, 2020 at 10:09 PM Greg KH <gregkh@linuxfoundation.org> wrote:
> > > > > >
> > > > > > On Sat, Dec 05, 2020 at 09:02:20PM +0800, Muchun Song wrote:
> > > > > > > Converrt NR_FILE_THPS account to pages.
> > > > > > >
> > > > > > > Signed-off-by: Muchun Song <songmuchun@bytedance.com>
> > > > > > > ---
> > > > > > > drivers/base/node.c | 3 +--
> > > > > > > fs/proc/meminfo.c | 2 +-
> > > > > > > mm/filemap.c | 2 +-
> > > > > > > mm/huge_memory.c | 3 ++-
> > > > > > > mm/khugepaged.c | 2 +-
> > > > > > > mm/memcontrol.c | 5 ++---
> > > > > > > 6 files changed, 8 insertions(+), 9 deletions(-)
> > > > > > >
> > > > > > > diff --git a/drivers/base/node.c b/drivers/base/node.c
> > > > > > > index 05c369e93e16..f6a9521bbcf8 100644
> > > > > > > --- a/drivers/base/node.c
> > > > > > > +++ b/drivers/base/node.c
> > > > > > > @@ -466,8 +466,7 @@ static ssize_t node_read_meminfo(struct device *dev,
> > > > > > > HPAGE_PMD_NR),
> > > > > > > nid, K(node_page_state(pgdat, NR_SHMEM_PMDMAPPED) *
> > > > > > > HPAGE_PMD_NR),
> > > > > > > - nid, K(node_page_state(pgdat, NR_FILE_THPS) *
> > > > > > > - HPAGE_PMD_NR),
> > > > > > > + nid, K(node_page_state(pgdat, NR_FILE_THPS)),
> > > > > >
> > > > > > Again, is this changing a user-visable value?
> > > > > >
> > > > >
> > > > > Of course not.
> > > > >
> > > > > In the previous, the NR_FILE_THPS account is like below:
> > > > >
> > > > > __mod_lruvec_page_state(page, NR_FILE_THPS, 1);
> > > > >
> > > > > With this patch, it is:
> > > > >
> > > > > __mod_lruvec_page_state(page, NR_FILE_THPS, HPAGE_PMD_NR);
> > > > >
> > > > > So the result is not changed from the view of user space.
> > > >
> > > > So you "broke" it on the previous patch and "fixed" it on this one? Why
> > > > not just do it all in one patch?
> > >
> > > Sorry for the confusion. I mean that the "previous" is without all of this patch
> > > series. So this series is aimed to convert the unit of all different THP vmstat
> > > counters from HPAGE_PMD_NR to pages. Thanks.
> >
> > I'm sorry, I still do not understand. It looks to me that you are
> > changing the number printed to userspace here. Where is the
> > corrisponding change that changed the units for this function? Is it in
> > this patch? If so, sorry, I did not see that at all...
>
> Sorry, actually, this patch does not change the number printed to
> userspace. It only changes the unit of the vmstat counter.
>
> Without this patch, every counter of NR_FILE_THPS represents
> NR_FILE_THPS pages. However, with this patch, every counter
> represents only one page. And why do I want to do this? Can
> reference to the cover letter. Thanks very much.

Ah, I missed the change of the "ratio" value in the memory_stats[]
array. That wasn't obvious at all, ugh. Sorry for the noise,

greg k-h

\
 
 \ /
  Last update: 2020-12-05 19:38    [W:0.313 / U:0.008 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site