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@xxxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxxxxxxxx> 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@xxxxxxxxxxxxx> > > > > > > > --- > > > > > > > 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