Messages in this thread |  | | | Date | Wed, 14 Oct 2009 14:51:02 -0400 (EDT) | | From | Christoph Lameter <> | | Subject | RE: [PATCH 13/16] percpu: remove per_cpu__ prefix. |
| |
On Wed, 14 Oct 2009, Luck, Tony wrote:
> > we would still have to use per cpu operations to get to the contents of > > these variables. > > That's good. > > > Hope that addresses your concerns. > > But then I don't understand the original patch that was going to do: > > > -#define __ia64_per_cpu_var(var) per_cpu__##var > > +#define __ia64_per_cpu_var(var) var > > Presumably all actual use of __ia64_per_cpu_var is being replaced > by some other "per cpu operations"?
Hmmm... Right. IA64 is a special case because the access of the per cpu variable at a specific address causes per cpu TLBs to do the relocation.
Other platforms have to add a per cpu specific offset to a variable to get the right per cpu variable.
As a result IA64 strictly does not need this_cpu_read() and this_cpu_write(). However, not using the operations is going to cause the sparse annotation by Tejun to trigger errors. this_cpu_read() is likely a noop for IA64 that just changes the annotations so that sparse warnings do not trigger. Tejun?
|  |