On Mon 16-05-16 15:36:56, Andrew Morton wrote: > On Mon, 16 May 2016 16:23:33 +0200 Michal Hocko <mhocko@xxxxxxxxxx> wrote: > > > Andrew, I think that the following is more straightforward fix and > > should be folded in to the patch which has introduced vmstat_refresh. > > --- > > >From b8dd18fb7df040e1bfe61aadde1d903589de15e4 Mon Sep 17 00:00:00 2001 > > From: Michal Hocko <mhocko@xxxxxxxx> > > Date: Mon, 16 May 2016 16:19:53 +0200 > > Subject: [PATCH] mmotm: mm-proc-sys-vm-stat_refresh-to-force-vmstat-update-fix > > > > Arnd has reported: > > In randconfig builds with sysfs, procfs and numa all disabled, > > but SMP enabled, we now get a link error in the newly introduced > > vmstat_refresh function: > > > > mm/built-in.o: In function `vmstat_refresh': > > :(.text+0x15c78): undefined reference to `vmstat_text' > > > > vmstat_refresh is proc_fs specific so there is no reason to define it > > when !CONFIG_PROC_FS. > > I already had this: > > From: Christoph Lameter <cl@xxxxxxxxx> > Subject: Do not build vmstat_refresh if there is no procfs support > > It makes no sense to build functionality into the kernel that > cannot be used and causes build issues. > > Link: http://lkml.kernel.org/r/alpine.DEB.2.20.1605111011260.9351@xxxxxxxxxxxxxxx > Signed-off-by: Christoph Lameter <cl@xxxxxxxxx> > Reported-by: Arnd Bergmann <arnd@xxxxxxxx> > Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> But this is broken: http://lkml.kernel.org/r/20160516073144.GA23146@xxxxxxxxxxxxxx and kbuild robot agrees http://lkml.kernel.org/r/201605171333.ANqJcwpy%fengguang.wu@xxxxxxxxx > --- > > mm/vmstat.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff -puN mm/vmstat.c~mm-proc-sys-vm-stat_refresh-to-force-vmstat-update-fix mm/vmstat.c > --- a/mm/vmstat.c~mm-proc-sys-vm-stat_refresh-to-force-vmstat-update-fix > +++ a/mm/vmstat.c > @@ -1371,7 +1371,6 @@ static const struct file_operations proc > .llseek = seq_lseek, > .release = seq_release, > }; > -#endif /* CONFIG_PROC_FS */ > > #ifdef CONFIG_SMP > static struct workqueue_struct *vmstat_wq; > @@ -1436,7 +1435,10 @@ int vmstat_refresh(struct ctl_table *tab > *lenp = 0; > return 0; > } > +#endif /* CONFIG_SMP */ > +#endif /* CONFIG_PROC_FS */ > > +#ifdef CONFIG_SMP > static void vmstat_update(struct work_struct *w) > { > if (refresh_cpu_vm_stats(true)) { > _ -- Michal Hocko SUSE Labs -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>