Re: [PATCH 4/8] cpumask: convert kernel trace functions

Steven Rostedt
2008-12-20T01:42:00Z

On Fri, 19 Dec 2008, Mike Travis wrote:

> Steven Rostedt wrote:
> > On Fri, 19 Dec 2008, Mike Travis wrote:
> >
> >> Impact: Reduce memory usage, use new cpumask API.
> >>
> >> Convert kernel trace functions to use struct cpumask.
> >>
> > How does this save memory if we just allocate a cpumask var everytime
> > we allocate a ring buffer? Is cpumask_var_t a mask of possible CPUS and
> > not NR_CPUS?
> >
> > Otherwise, I see this as just adding one extra pointer.
> >
> > -- Steve
>
> Hi Steve,
>
> Yes, eventually, the cpumask_var_t will be allocated based on cpumask_size()
> which will become BITS_TO_LONG(nr_cpu_ids) instead of BITS_TO_LONGS(NR_CPUS)
> as soon as the kernel becomes "cpumask" clean. (clean being that it ignores
> all bits >= nr_cpu_ids.)
>
> Note that on small NR_CPUS count systems, cpumask_var_t is a static array
> and no allocation happens, so it only kicks in when CONFIG_CPUMASK_OFFSTACK=y.

For future memory savings...

Acked-by: Steven Rostedt <srostedt@redhat.com>

-- Steve