linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
From: kbuild test robot <lkp@intel.com>
To: Shakeel Butt <shakeelb@google.com>
Cc: kbuild-all@01.org, Johannes Weiner <hannes@cmpxchg.org>,
	Roman Gushchin <guro@fb.com>,
	Vladimir Davydov <vdavydov.dev@gmail.com>,
	Michal Hocko <mhocko@suse.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org, cgroups@vger.kernel.org,
	linux-kernel@vger.kernel.org
Subject: Re: [PATCH] memcg: localize memcg_kmem_enabled() check
Date: Thu, 3 Jan 2019 13:03:23 +0800	[thread overview]
Message-ID: <201901031354.L57KJIRv%fengguang.wu@intel.com> (raw)
In-Reply-To: <20190103003129.186555-1-shakeelb@google.com>

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

Hi Shakeel,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.20 next-20190102]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Shakeel-Butt/memcg-localize-memcg_kmem_enabled-check/20190103-120255
config: x86_64-randconfig-x013-201900 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   mm/page_alloc.c: In function 'free_pages_prepare':
>> mm/page_alloc.c:1059:3: error: implicit declaration of function '__memcg_kmem_uncharge'; did you mean 'memcg_kmem_uncharge'? [-Werror=implicit-function-declaration]
      __memcg_kmem_uncharge(page, order);
      ^~~~~~~~~~~~~~~~~~~~~
      memcg_kmem_uncharge
   In file included from include/asm-generic/bug.h:5:0,
                    from arch/x86/include/asm/bug.h:83,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/mm.h:9,
                    from mm/page_alloc.c:18:
   mm/page_alloc.c: In function '__alloc_pages_nodemask':
>> mm/page_alloc.c:4553:15: error: implicit declaration of function '__memcg_kmem_charge'; did you mean 'memcg_kmem_charge'? [-Werror=implicit-function-declaration]
         unlikely(__memcg_kmem_charge(page, gfp_mask, order) != 0)) {
                  ^
   include/linux/compiler.h:77:42: note: in definition of macro 'unlikely'
    # define unlikely(x) __builtin_expect(!!(x), 0)
                                             ^
   cc1: some warnings being treated as errors

vim +1059 mm/page_alloc.c

  1024	
  1025	static __always_inline bool free_pages_prepare(struct page *page,
  1026						unsigned int order, bool check_free)
  1027	{
  1028		int bad = 0;
  1029	
  1030		VM_BUG_ON_PAGE(PageTail(page), page);
  1031	
  1032		trace_mm_page_free(page, order);
  1033	
  1034		/*
  1035		 * Check tail pages before head page information is cleared to
  1036		 * avoid checking PageCompound for order-0 pages.
  1037		 */
  1038		if (unlikely(order)) {
  1039			bool compound = PageCompound(page);
  1040			int i;
  1041	
  1042			VM_BUG_ON_PAGE(compound && compound_order(page) != order, page);
  1043	
  1044			if (compound)
  1045				ClearPageDoubleMap(page);
  1046			for (i = 1; i < (1 << order); i++) {
  1047				if (compound)
  1048					bad += free_tail_pages_check(page, page + i);
  1049				if (unlikely(free_pages_check(page + i))) {
  1050					bad++;
  1051					continue;
  1052				}
  1053				(page + i)->flags &= ~PAGE_FLAGS_CHECK_AT_PREP;
  1054			}
  1055		}
  1056		if (PageMappingFlags(page))
  1057			page->mapping = NULL;
  1058		if (memcg_kmem_enabled() && PageKmemcg(page))
> 1059			__memcg_kmem_uncharge(page, order);
  1060		if (check_free)
  1061			bad += free_pages_check(page);
  1062		if (bad)
  1063			return false;
  1064	
  1065		page_cpupid_reset_last(page);
  1066		page->flags &= ~PAGE_FLAGS_CHECK_AT_PREP;
  1067		reset_page_owner(page, order);
  1068	
  1069		if (!PageHighMem(page)) {
  1070			debug_check_no_locks_freed(page_address(page),
  1071						   PAGE_SIZE << order);
  1072			debug_check_no_obj_freed(page_address(page),
  1073						   PAGE_SIZE << order);
  1074		}
  1075		arch_free_page(page, order);
  1076		kernel_poison_pages(page, 1 << order, 0);
  1077		kernel_map_pages(page, 1 << order, 0);
  1078		kasan_free_nondeferred_pages(page, order);
  1079	
  1080		return true;
  1081	}
  1082	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

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

WARNING: multiple messages have this Message-ID
From: kbuild test robot <lkp@intel.com>
To: Shakeel Butt <shakeelb@google.com>
Cc: kbuild-all@01.org, Johannes Weiner <hannes@cmpxchg.org>,
	Roman Gushchin <guro@fb.com>,
	Vladimir Davydov <vdavydov.dev@gmail.com>,
	Michal Hocko <mhocko@suse.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	linux-mm@kvack.org, cgroups@vger.kernel.org,
	linux-kernel@vger.kernel.org, Shakeel Butt <shakeelb@google.com>
Subject: Re: [PATCH] memcg: localize memcg_kmem_enabled() check
Date: Thu, 3 Jan 2019 13:03:23 +0800	[thread overview]
Message-ID: <201901031354.L57KJIRv%fengguang.wu@intel.com> (raw)
Message-ID: <20190103050323.yRHeIuaHvHgrx3ryMgP7efXtM5VFEZ6rA-xKVXpqkVw@z> (raw)
In-Reply-To: <20190103003129.186555-1-shakeelb@google.com>

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

Hi Shakeel,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.20 next-20190102]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Shakeel-Butt/memcg-localize-memcg_kmem_enabled-check/20190103-120255
config: x86_64-randconfig-x013-201900 (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All errors (new ones prefixed by >>):

   mm/page_alloc.c: In function 'free_pages_prepare':
>> mm/page_alloc.c:1059:3: error: implicit declaration of function '__memcg_kmem_uncharge'; did you mean 'memcg_kmem_uncharge'? [-Werror=implicit-function-declaration]
      __memcg_kmem_uncharge(page, order);
      ^~~~~~~~~~~~~~~~~~~~~
      memcg_kmem_uncharge
   In file included from include/asm-generic/bug.h:5:0,
                    from arch/x86/include/asm/bug.h:83,
                    from include/linux/bug.h:5,
                    from include/linux/mmdebug.h:5,
                    from include/linux/mm.h:9,
                    from mm/page_alloc.c:18:
   mm/page_alloc.c: In function '__alloc_pages_nodemask':
>> mm/page_alloc.c:4553:15: error: implicit declaration of function '__memcg_kmem_charge'; did you mean 'memcg_kmem_charge'? [-Werror=implicit-function-declaration]
         unlikely(__memcg_kmem_charge(page, gfp_mask, order) != 0)) {
                  ^
   include/linux/compiler.h:77:42: note: in definition of macro 'unlikely'
    # define unlikely(x) __builtin_expect(!!(x), 0)
                                             ^
   cc1: some warnings being treated as errors

vim +1059 mm/page_alloc.c

  1024	
  1025	static __always_inline bool free_pages_prepare(struct page *page,
  1026						unsigned int order, bool check_free)
  1027	{
  1028		int bad = 0;
  1029	
  1030		VM_BUG_ON_PAGE(PageTail(page), page);
  1031	
  1032		trace_mm_page_free(page, order);
  1033	
  1034		/*
  1035		 * Check tail pages before head page information is cleared to
  1036		 * avoid checking PageCompound for order-0 pages.
  1037		 */
  1038		if (unlikely(order)) {
  1039			bool compound = PageCompound(page);
  1040			int i;
  1041	
  1042			VM_BUG_ON_PAGE(compound && compound_order(page) != order, page);
  1043	
  1044			if (compound)
  1045				ClearPageDoubleMap(page);
  1046			for (i = 1; i < (1 << order); i++) {
  1047				if (compound)
  1048					bad += free_tail_pages_check(page, page + i);
  1049				if (unlikely(free_pages_check(page + i))) {
  1050					bad++;
  1051					continue;
  1052				}
  1053				(page + i)->flags &= ~PAGE_FLAGS_CHECK_AT_PREP;
  1054			}
  1055		}
  1056		if (PageMappingFlags(page))
  1057			page->mapping = NULL;
  1058		if (memcg_kmem_enabled() && PageKmemcg(page))
> 1059			__memcg_kmem_uncharge(page, order);
  1060		if (check_free)
  1061			bad += free_pages_check(page);
  1062		if (bad)
  1063			return false;
  1064	
  1065		page_cpupid_reset_last(page);
  1066		page->flags &= ~PAGE_FLAGS_CHECK_AT_PREP;
  1067		reset_page_owner(page, order);
  1068	
  1069		if (!PageHighMem(page)) {
  1070			debug_check_no_locks_freed(page_address(page),
  1071						   PAGE_SIZE << order);
  1072			debug_check_no_obj_freed(page_address(page),
  1073						   PAGE_SIZE << order);
  1074		}
  1075		arch_free_page(page, order);
  1076		kernel_poison_pages(page, 1 << order, 0);
  1077		kernel_map_pages(page, 1 << order, 0);
  1078		kasan_free_nondeferred_pages(page, order);
  1079	
  1080		return true;
  1081	}
  1082	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

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

  parent reply	other threads:[~2019-01-03  5:04 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-01-03  0:31 Shakeel Butt
2019-01-03  0:31 ` Shakeel Butt
2019-01-03  5:03 ` kbuild test robot [this message]
2019-01-03  5:03   ` kbuild test robot
2019-01-03  5:28 ` kbuild test robot
2019-01-03  5:28   ` kbuild test robot

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=201901031354.L57KJIRv%fengguang.wu@intel.com \
    --to=lkp@intel.com \
    --cc=akpm@linux-foundation.org \
    --cc=cgroups@vger.kernel.org \
    --cc=guro@fb.com \
    --cc=hannes@cmpxchg.org \
    --cc=kbuild-all@01.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-mm@kvack.org \
    --cc=mhocko@suse.com \
    --cc=shakeelb@google.com \
    --cc=vdavydov.dev@gmail.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