* [feng:master 9/10] mm/page_alloc.c:4754:6: error: 'watchdog_thresh' undeclared; did you mean 'proc_watchdog_thresh'?
@ 2019-11-17 9:16 kbuild test robot
0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2019-11-17 9:16 UTC (permalink / raw)
To: kbuild-all
[-- Attachment #1: Type: text/plain, Size: 6830 bytes --]
tree: feng/master
head: 7f07deef84904cb8c59e98cceb96e2dfcf2f8a61
commit: 81a18a0094e510662c7d1cb83f11dcef48736469 [9/10] page_alloc: add debug
config: arm64-randconfig-a001-20191117 (attached as .config)
compiler: aarch64-linux-gcc (GCC) 7.4.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout 81a18a0094e510662c7d1cb83f11dcef48736469
# save the attached .config to linux build tree
GCC_VERSION=7.4.0 make.cross ARCH=arm64
If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
All errors (new ones prefixed by >>):
mm/page_alloc.c: In function '__alloc_pages_nodemask':
>> mm/page_alloc.c:4754:6: error: 'watchdog_thresh' undeclared (first use in this function); did you mean 'proc_watchdog_thresh'?
if (watchdog_thresh == 20) {
^~~~~~~~~~~~~~~
proc_watchdog_thresh
mm/page_alloc.c:4754:6: note: each undeclared identifier is reported only once for each function it appears in
In file included from include/asm-generic/bug.h:19:0,
from arch/arm64/include/asm/bug.h:26,
from include/linux/bug.h:5,
from include/linux/mmdebug.h:5,
from include/linux/mm.h:9,
from mm/page_alloc.c:19:
mm/page_alloc.c:4759:33: error: 'struct zone' has no member named 'node'; did you mean 'name'?
ac.preferred_zoneref->zone->node,
^
include/linux/kernel.h:816:40: note: in definition of macro '__trace_printk_check_format'
____trace_printk_check_format(fmt, ##args); \
^~~~
include/linux/kernel.h:853:3: note: in expansion of macro 'do_trace_printk'
do_trace_printk(fmt, ##__VA_ARGS__); \
^~~~~~~~~~~~~~~
include/linux/kernel.h:130:9: note: in expansion of macro 'trace_printk'
trace_printk(KERN_ERR "" f "\n",##x)
^~~~~~~~~~~~
mm/page_alloc.c:4758:4: note: in expansion of macro 'mtp'
mtp("ac->pref: node[%d].zone[%d] nodemask=0x%x order=%d",
^~~
mm/page_alloc.c:4759:33: error: 'struct zone' has no member named 'node'; did you mean 'name'?
ac.preferred_zoneref->zone->node,
^
include/linux/kernel.h:867:50: note: in definition of macro 'do_trace_printk'
__trace_bprintk(_THIS_IP_, trace_printk_fmt, ##args); \
^~~~
include/linux/kernel.h:130:9: note: in expansion of macro 'trace_printk'
trace_printk(KERN_ERR "" f "\n",##x)
^~~~~~~~~~~~
mm/page_alloc.c:4758:4: note: in expansion of macro 'mtp'
mtp("ac->pref: node[%d].zone[%d] nodemask=0x%x order=%d",
^~~
mm/page_alloc.c:4759:33: error: 'struct zone' has no member named 'node'; did you mean 'name'?
ac.preferred_zoneref->zone->node,
^
include/linux/kernel.h:869:36: note: in definition of macro 'do_trace_printk'
__trace_printk(_THIS_IP_, fmt, ##args); \
^~~~
include/linux/kernel.h:130:9: note: in expansion of macro 'trace_printk'
trace_printk(KERN_ERR "" f "\n",##x)
^~~~~~~~~~~~
mm/page_alloc.c:4758:4: note: in expansion of macro 'mtp'
mtp("ac->pref: node[%d].zone[%d] nodemask=0x%x order=%d",
^~~
vim +4754 mm/page_alloc.c
4717
4718 /*
4719 * This is the 'heart' of the zoned buddy allocator.
4720 */
4721 struct page *
4722 __alloc_pages_nodemask(gfp_t gfp_mask, unsigned int order, int preferred_nid,
4723 nodemask_t *nodemask)
4724 {
4725 struct page *page;
4726 unsigned int alloc_flags = ALLOC_WMARK_LOW;
4727 gfp_t alloc_mask; /* The gfp_t that was actually used for allocation */
4728 struct alloc_context ac = { };
4729
4730 static unsigned long loop;
4731
4732 /*
4733 * There are several places where we assume that the order value is sane
4734 * so bail out early if the request is out of bound.
4735 */
4736 if (unlikely(order >= MAX_ORDER)) {
4737 WARN_ON_ONCE(!(gfp_mask & __GFP_NOWARN));
4738 return NULL;
4739 }
4740
4741 gfp_mask &= gfp_allowed_mask;
4742 alloc_mask = gfp_mask;
4743 if (!prepare_alloc_pages(gfp_mask, order, preferred_nid, nodemask, &ac, &alloc_mask, &alloc_flags))
4744 return NULL;
4745
4746 finalise_ac(gfp_mask, &ac);
4747
4748 /*
4749 * Forbid the first pass from falling back to types that fragment
4750 * memory until all local zones are considered.
4751 */
4752 alloc_flags |= alloc_flags_nofragment(ac.preferred_zoneref->zone, gfp_mask);
4753
> 4754 if (watchdog_thresh == 20) {
4755
4756 if (loop % 4096 == 0) {
4757
4758 mtp("ac->pref: node[%d].zone[%d] nodemask=0x%x order=%d",
4759 ac.preferred_zoneref->zone->node,
4760 ac.preferred_zoneref->zone_idx,
4761 *((unsigned long *)ac.nodemask),
4762 order
4763 );
4764
4765 }
4766
4767 loop++;
4768
4769 }
4770
4771 /* First allocation attempt */
4772 page = get_page_from_freelist(alloc_mask, order, alloc_flags, &ac);
4773 if (likely(page))
4774 goto out;
4775
4776 /*
4777 * Apply scoped allocation constraints. This is mainly about GFP_NOFS
4778 * resp. GFP_NOIO which has to be inherited for all allocation requests
4779 * from a particular context which has been marked by
4780 * memalloc_no{fs,io}_{save,restore}.
4781 */
4782 alloc_mask = current_gfp_context(gfp_mask);
4783 ac.spread_dirty_pages = false;
4784
4785 /*
4786 * Restore the original nodemask if it was potentially replaced with
4787 * &cpuset_current_mems_allowed to optimize the fast-path attempt.
4788 */
4789 if (unlikely(ac.nodemask != nodemask))
4790 ac.nodemask = nodemask;
4791
4792 page = __alloc_pages_slowpath(alloc_mask, order, &ac);
4793
4794 out:
4795 if (memcg_kmem_enabled() && (gfp_mask & __GFP_ACCOUNT) && page &&
4796 unlikely(__memcg_kmem_charge(page, gfp_mask, order) != 0)) {
4797 __free_pages(page, order);
4798 page = NULL;
4799 }
4800
4801 trace_mm_page_alloc(page, order, alloc_mask, ac.migratetype);
4802
4803 return page;
4804 }
4805 EXPORT_SYMBOL(__alloc_pages_nodemask);
4806
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org Intel Corporation
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 28324 bytes --]
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2019-11-17 9:16 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-11-17 9:16 [feng:master 9/10] mm/page_alloc.c:4754:6: error: 'watchdog_thresh' undeclared; did you mean 'proc_watchdog_thresh'? kbuild test robot
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.