Re: Avoid allocating during interleave from almost full nodes

From: Andrew Morton
Date: Fri Dec 01 2006 - 02:59:55 EST


On Thu, 30 Nov 2006 23:51:17 -0800
Paul Jackson <pj@xxxxxxx> wrote:

> A month ago, Christoph replied to pj:
> >
> > On Sat, 4 Nov 2006, Paul Jackson wrote:
> >
> > > Do you know of any existing counters that we could use like this?
> > >
> > > Adding a system wide count of pages allocated or scanned, just for
> > > these fullnode hint caches, bothers me.
> >
> > There are already such counters. PGALLOC_* and PGSCAN_*. See
> > include/linux/vmstat.h
>
> These counters depend on CONFIG_VM_EVENT_COUNTERS.
>
> The Kconfig comment for CONFIG_VM_EVENT_COUNTERS states:
>
> VM event counters are only needed to for event counts to be
> shown. They have no function for the kernel itself. This
> option allows the disabling of the VM event counters.
> /proc/vmstat will only show page counts.
>
> (By the way - note the "needed to for event" phrasing error.)
>
> The header file, include/linux/vmstat.h, for these counters states:
>
> /*
> * Light weight per cpu counter implementation.
> *
> * Counters should only be incremented and no critical kernel component
> * should rely on the counter values.
>
> Both these clearly state that I should not use these counters for real
> kernel functions.
>
> If that is so, I should find some other "time base" for the zonelist
> caching.
>
> If that is not so, then these comments need updating.
>
> Anybody have any idea which is the case?

You need to set EMBEDDED to disable VM_EVENT_COUNTERS.

Things like procps (vmstat, top, etc) now use /proc/vmstat and would likely
break.

I don't know how much space it saves, but I doubt if the world would end if
we removed CONFIG_VM_EVENT_COUNTERS.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/