[PATCH 00/05] robust per_cpu allocation for modules
Paul Mackerras
paulus at samba.org
Sun Apr 16 16:35:09 EST 2006
Steven Rostedt writes:
> The data in .data.percpu_offset holds is referenced by the per_cpu
> variable name which points to the __per_cpu_offset array. For modules,
> it will point to the per_cpu_offset array of the module.
>
> Example:
>
> DEFINE_PER_CPU(int, myint);
>
> would now create a variable called per_cpu_offset__myint in
> the .data.percpu_offset section. This variable will point to the (if
> defined in the kernel) __per_cpu_offset[] array. If this was a module
> variable, it would point to the module per_cpu_offset[] array which is
> created when the modules is loaded.
This sounds like you have an extra memory reference each time a
per-cpu variable is accessed. Have you tried to measure the
performance impact of that? If so, how much performance does it lose?
Paul.
More information about the Linuxppc-dev
mailing list