[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201806210806.f9bCtAAM%fengguang.wu@intel.com>
Date: Thu, 21 Jun 2018 09:17:18 +0800
From: kbuild test robot <lkp@...el.com>
To: Rick Edgecombe <rick.p.edgecombe@...el.com>
Cc: kbuild-all@...org, tglx@...utronix.de, mingo@...hat.com,
hpa@...or.com, x86@...nel.org, linux-kernel@...r.kernel.org,
linux-mm@...ck.org, kernel-hardening@...ts.openwall.com,
kristen.c.accardi@...el.com, dave.hansen@...el.com,
arjan.van.de.ven@...el.com,
Rick Edgecombe <rick.p.edgecombe@...el.com>
Subject: Re: [PATCH 3/3] vmalloc: Add debugfs modfraginfo
Hi Rick,
Thank you for the patch! Yet something to improve:
[auto build test ERROR on mmotm/master]
[also build test ERROR on v4.18-rc1 next-20180620]
[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/Rick-Edgecombe/KASLR-feature-to-randomize-each-loadable-module/20180621-061051
base: git://git.cmpxchg.org/linux-mmotm.git master
config: parisc-c3000_defconfig (attached as .config)
compiler: hppa-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# save the attached .config to linux build tree
GCC_VERSION=7.2.0 make.cross ARCH=parisc
All errors (new ones prefixed by >>):
mm/vmalloc.c: In function 'modulefraginfo_debug_show':
>> mm/vmalloc.c:2821:27: error: 'MODULES_VADDR' undeclared (first use in this function); did you mean 'MODULE_AUTHOR'?
unsigned long last_end = MODULES_VADDR;
^~~~~~~~~~~~~
MODULE_AUTHOR
mm/vmalloc.c:2821:27: note: each undeclared identifier is reported only once for each function it appears in
mm/vmalloc.c:2834:22: error: 'MODULES_END' undeclared (first use in this function); did you mean 'MODULES_VADDR'?
&& obj->va_end <= MODULES_END) {
^~~~~~~~~~~
MODULES_VADDR
vim +2821 mm/vmalloc.c
2817
2818 static int modulefraginfo_debug_show(struct seq_file *m, void *v)
2819 {
2820 struct list_head *i;
> 2821 unsigned long last_end = MODULES_VADDR;
2822 unsigned long total_free = 0;
2823 unsigned long largest_free = 0;
2824 unsigned long backup_cnt = 0;
2825 unsigned long gap;
2826
2827 spin_lock(&vmap_area_lock);
2828
2829 list_for_each(i, &vmap_area_list) {
2830 struct vmap_area *obj = list_entry(i, struct vmap_area, list);
2831
2832 if (!(obj->flags & VM_LAZY_FREE)
2833 && obj->va_start >= MODULES_VADDR
2834 && obj->va_end <= MODULES_END) {
2835
2836 if (obj->va_start >= get_backup_start())
2837 backup_cnt++;
2838
2839 gap = (obj->va_start - last_end);
2840 if (gap > largest_free)
2841 largest_free = gap;
2842 total_free += gap;
2843
2844 last_end = obj->va_end;
2845 }
2846 }
2847
2848 gap = (MODULES_END - last_end);
2849 if (gap > largest_free)
2850 largest_free = gap;
2851 total_free += gap;
2852
2853 spin_unlock(&vmap_area_lock);
2854
2855 seq_printf(m, "Largest free space:\t\t%lu\n", largest_free);
2856 if (total_free)
2857 seq_printf(m, "External Memory Fragementation:\t%lu%%\n",
2858 100-(100*largest_free/total_free));
2859 else
2860 seq_puts(m, "External Memory Fragementation:\t0%%\n");
2861
2862 print_backup_area(m, backup_cnt);
2863
2864 return 0;
2865 }
2866
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
Download attachment ".config.gz" of type "application/gzip" (14543 bytes)
Powered by blists - more mailing lists