All of lore.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Ning Zhang <ningzhang@linux.alibaba.com>
Cc: llvm@lists.linux.dev, kbuild-all@lists.01.org
Subject: Re: [RFC 2/6] mm, thp: add a global interface for zero subapges reclaim
Date: Fri, 29 Oct 2021 08:44:34 +0800	[thread overview]
Message-ID: <202110290800.A1aXcfoV-lkp@intel.com> (raw)
In-Reply-To: <1635422215-99394-3-git-send-email-ningzhang@linux.alibaba.com>

[-- Attachment #1: Type: text/plain, Size: 4822 bytes --]

Hi Ning,

[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on linus/master]
[also build test ERROR on v5.15-rc7]
[cannot apply to hnaz-mm/master next-20211028]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Ning-Zhang/Reclaim-zero-subpages-of-thp-to-avoid-memory-bloat/20211028-200001
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1fc596a56b334f4d593a2b49e5ff55af6aaa0816
config: arm-randconfig-c002-20211028 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5db7568a6a1fcb408eb8988abdaff2a225a8eb72)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://github.com/0day-ci/linux/commit/4111289b6a222d9c2aeb7c593f0f52e0c38f3247
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Ning-Zhang/Reclaim-zero-subpages-of-thp-to-avoid-memory-bloat/20211028-200001
        git checkout 4111289b6a222d9c2aeb7c593f0f52e0c38f3247
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=arm 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   mm/vmscan.c:1340:6: warning: variable 'err' set but not used [-Wunused-but-set-variable]
           int err;
               ^
   mm/vmscan.c:2803:36: error: no member named 'hpage_reclaim_queue' in 'struct mem_cgroup_per_node'
           hr_queue = &memcg->nodeinfo[nid]->hpage_reclaim_queue;
                       ~~~~~~~~~~~~~~~~~~~~  ^
>> mm/vmscan.c:2804:6: error: implicit declaration of function 'get_thp_reclaim_mode' [-Werror,-Wimplicit-function-declaration]
           if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
               ^
>> mm/vmscan.c:2804:37: error: use of undeclared identifier 'THP_RECLAIM_DISABLE'; did you mean 'WB_RECLAIMABLE'?
           if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
                                              ^~~~~~~~~~~~~~~~~~~
                                              WB_RECLAIMABLE
   include/linux/backing-dev-defs.h:37:2: note: 'WB_RECLAIMABLE' declared here
           WB_RECLAIMABLE,
           ^
   mm/vmscan.c:2813:7: error: implicit declaration of function 'zsr_get_hpage' [-Werror,-Wimplicit-function-declaration]
                   if (zsr_get_hpage(hr_queue, &page))
                       ^
   mm/vmscan.c:2819:19: error: implicit declaration of function 'zsr_reclaim_hpage' [-Werror,-Wimplicit-function-declaration]
                   nr_reclaimed += zsr_reclaim_hpage(lruvec, page);
                                   ^
   1 warning and 5 errors generated.


vim +/get_thp_reclaim_mode +2804 mm/vmscan.c

  2784	
  2785	#ifdef CONFIG_MEMCG
  2786	#define MAX_SCAN_HPAGE 32UL
  2787	/*
  2788	 * Try to reclaim the zero subpages for the transparent huge page.
  2789	 */
  2790	static unsigned long reclaim_hpage_zero_subpages(struct lruvec *lruvec,
  2791							 int priority,
  2792							 unsigned long nr_to_reclaim)
  2793	{
  2794		struct mem_cgroup *memcg;
  2795		struct hpage_reclaim *hr_queue;
  2796		int nid = lruvec->pgdat->node_id;
  2797		unsigned long nr_reclaimed = 0, nr_scanned = 0, nr_to_scan;
  2798	
  2799		memcg = lruvec_memcg(lruvec);
  2800		if (!memcg)
  2801			goto out;
  2802	
  2803		hr_queue = &memcg->nodeinfo[nid]->hpage_reclaim_queue;
> 2804		if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
  2805			goto out;
  2806	
  2807		/* The last scan loop will scan all the huge pages.*/
  2808		nr_to_scan = priority == 0 ? 0 : MAX_SCAN_HPAGE;
  2809	
  2810		do {
  2811			struct page *page = NULL;
  2812	
  2813			if (zsr_get_hpage(hr_queue, &page))
  2814				break;
  2815	
  2816			if (!page)
  2817				continue;
  2818	
  2819			nr_reclaimed += zsr_reclaim_hpage(lruvec, page);
  2820	
  2821			cond_resched();
  2822	
  2823		} while ((nr_reclaimed < nr_to_reclaim) && (++nr_scanned != nr_to_scan));
  2824	out:
  2825		return nr_reclaimed;
  2826	}
  2827	#else
  2828	static unsigned long reclaim_hpage_zero_subpages(struct lruvec *lruvec,
  2829							 int priority,
  2830							 unsigned long nr_to_reclaim)
  2831	{
  2832		return 0;
  2833	}
  2834	#endif
  2835	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 29712 bytes --]

WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [RFC 2/6] mm, thp: add a global interface for zero subapges reclaim
Date: Fri, 29 Oct 2021 08:44:34 +0800	[thread overview]
Message-ID: <202110290800.A1aXcfoV-lkp@intel.com> (raw)
In-Reply-To: <1635422215-99394-3-git-send-email-ningzhang@linux.alibaba.com>

[-- Attachment #1: Type: text/plain, Size: 4936 bytes --]

Hi Ning,

[FYI, it's a private test report for your RFC patch.]
[auto build test ERROR on linus/master]
[also build test ERROR on v5.15-rc7]
[cannot apply to hnaz-mm/master next-20211028]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]

url:    https://github.com/0day-ci/linux/commits/Ning-Zhang/Reclaim-zero-subpages-of-thp-to-avoid-memory-bloat/20211028-200001
base:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git 1fc596a56b334f4d593a2b49e5ff55af6aaa0816
config: arm-randconfig-c002-20211028 (attached as .config)
compiler: clang version 14.0.0 (https://github.com/llvm/llvm-project 5db7568a6a1fcb408eb8988abdaff2a225a8eb72)
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # install arm cross compiling tool for clang build
        # apt-get install binutils-arm-linux-gnueabi
        # https://github.com/0day-ci/linux/commit/4111289b6a222d9c2aeb7c593f0f52e0c38f3247
        git remote add linux-review https://github.com/0day-ci/linux
        git fetch --no-tags linux-review Ning-Zhang/Reclaim-zero-subpages-of-thp-to-avoid-memory-bloat/20211028-200001
        git checkout 4111289b6a222d9c2aeb7c593f0f52e0c38f3247
        # save the attached .config to linux build tree
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=arm 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   mm/vmscan.c:1340:6: warning: variable 'err' set but not used [-Wunused-but-set-variable]
           int err;
               ^
   mm/vmscan.c:2803:36: error: no member named 'hpage_reclaim_queue' in 'struct mem_cgroup_per_node'
           hr_queue = &memcg->nodeinfo[nid]->hpage_reclaim_queue;
                       ~~~~~~~~~~~~~~~~~~~~  ^
>> mm/vmscan.c:2804:6: error: implicit declaration of function 'get_thp_reclaim_mode' [-Werror,-Wimplicit-function-declaration]
           if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
               ^
>> mm/vmscan.c:2804:37: error: use of undeclared identifier 'THP_RECLAIM_DISABLE'; did you mean 'WB_RECLAIMABLE'?
           if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
                                              ^~~~~~~~~~~~~~~~~~~
                                              WB_RECLAIMABLE
   include/linux/backing-dev-defs.h:37:2: note: 'WB_RECLAIMABLE' declared here
           WB_RECLAIMABLE,
           ^
   mm/vmscan.c:2813:7: error: implicit declaration of function 'zsr_get_hpage' [-Werror,-Wimplicit-function-declaration]
                   if (zsr_get_hpage(hr_queue, &page))
                       ^
   mm/vmscan.c:2819:19: error: implicit declaration of function 'zsr_reclaim_hpage' [-Werror,-Wimplicit-function-declaration]
                   nr_reclaimed += zsr_reclaim_hpage(lruvec, page);
                                   ^
   1 warning and 5 errors generated.


vim +/get_thp_reclaim_mode +2804 mm/vmscan.c

  2784	
  2785	#ifdef CONFIG_MEMCG
  2786	#define MAX_SCAN_HPAGE 32UL
  2787	/*
  2788	 * Try to reclaim the zero subpages for the transparent huge page.
  2789	 */
  2790	static unsigned long reclaim_hpage_zero_subpages(struct lruvec *lruvec,
  2791							 int priority,
  2792							 unsigned long nr_to_reclaim)
  2793	{
  2794		struct mem_cgroup *memcg;
  2795		struct hpage_reclaim *hr_queue;
  2796		int nid = lruvec->pgdat->node_id;
  2797		unsigned long nr_reclaimed = 0, nr_scanned = 0, nr_to_scan;
  2798	
  2799		memcg = lruvec_memcg(lruvec);
  2800		if (!memcg)
  2801			goto out;
  2802	
  2803		hr_queue = &memcg->nodeinfo[nid]->hpage_reclaim_queue;
> 2804		if (get_thp_reclaim_mode(memcg) == THP_RECLAIM_DISABLE)
  2805			goto out;
  2806	
  2807		/* The last scan loop will scan all the huge pages.*/
  2808		nr_to_scan = priority == 0 ? 0 : MAX_SCAN_HPAGE;
  2809	
  2810		do {
  2811			struct page *page = NULL;
  2812	
  2813			if (zsr_get_hpage(hr_queue, &page))
  2814				break;
  2815	
  2816			if (!page)
  2817				continue;
  2818	
  2819			nr_reclaimed += zsr_reclaim_hpage(lruvec, page);
  2820	
  2821			cond_resched();
  2822	
  2823		} while ((nr_reclaimed < nr_to_reclaim) && (++nr_scanned != nr_to_scan));
  2824	out:
  2825		return nr_reclaimed;
  2826	}
  2827	#else
  2828	static unsigned long reclaim_hpage_zero_subpages(struct lruvec *lruvec,
  2829							 int priority,
  2830							 unsigned long nr_to_reclaim)
  2831	{
  2832		return 0;
  2833	}
  2834	#endif
  2835	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 29712 bytes --]

  reply	other threads:[~2021-10-29  0:45 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-28 11:56 [RFC 0/6] Reclaim zero subpages of thp to avoid memory bloat Ning Zhang
2021-10-28 11:56 ` [RFC 1/6] mm, thp: introduce thp zero subpages reclaim Ning Zhang
2021-10-28 12:53   ` Matthew Wilcox
2021-10-29 12:16     ` ning zhang
2021-10-28 20:50   ` kernel test robot
2021-10-28 20:50     ` kernel test robot
2021-10-28 11:56 ` [RFC 2/6] mm, thp: add a global interface for zero subapges reclaim Ning Zhang
2021-10-29  0:44   ` kernel test robot [this message]
2021-10-29  0:44     ` kernel test robot
2021-10-28 11:56 ` [RFC 3/6] mm, thp: introduce zero subpages reclaim threshold Ning Zhang
2021-10-28 11:56 ` [RFC 4/6] mm, thp: introduce a controller to trigger zero subpages reclaim Ning Zhang
2021-10-28 11:56 ` [RFC 5/6] mm, thp: add some statistics for " Ning Zhang
2021-10-28 11:56 ` [RFC 6/6] mm, thp: add document " Ning Zhang
2021-10-28 14:13 ` [RFC 0/6] Reclaim zero subpages of thp to avoid memory bloat Kirill A. Shutemov
2021-10-29 12:07   ` ning zhang
2021-10-29 16:56     ` Yang Shi
2021-11-01  2:50       ` ning zhang
2021-10-29 13:38 ` Michal Hocko
2021-10-29 16:12   ` ning zhang
2021-11-01  9:20     ` Michal Hocko
2021-11-08  3:24       ` ning zhang

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=202110290800.A1aXcfoV-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=kbuild-all@lists.01.org \
    --cc=llvm@lists.linux.dev \
    --cc=ningzhang@linux.alibaba.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 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.