Re: [GIT RFC] percpu: use dynamic percpu allocator as the default percpu allocator

Tejun Heo
2009-03-24T15:26:15Z

Tejun Heo wrote:
> Hello, Martin.
>
> Sorry about the delay.
>
> Martin Schwidefsky wrote:
>> We do have a problem with #2, the dynamic percpu patches currently
>> breaks s390. But the nice thing is that we can now get rid of the GOTENT
>> relocation for the percpu symbols. If the code is changed to use
>> RELOC_HIDE for the SHIFT_PERCPU_PTR define, everything works just fine.
>> Patch attached. Nice works guys.
>>
>> Subject: [PATCH] s390: percpu access.
>>
>> From: Martin Schwidefsky <schwidefsky@de.ibm.com>
>>
>> With the dynamic percpu allocator there is no need anymore to play
>> tricks with the GOTENT relocation for the access to the percpu
>> symbols. A simple RELOC_HIDE gets the job done.
>
> Hmm... I don't quite get it. The GOTENT was to work around large
> offsets for modules, right? Can you please explain what changed by
> the dynamic percpu allocator?
>
>> +#define SHIFT_PERCPU_PTR(var, offset) RELOC_HIDE(&per_cpu_var(var), (offset))
>
> Hmm... @var already has per_cpu__ prefix when the above macro is
> invoked, so doing per_cpu_var() on it again wouldn't work. If simple
> RELOC_HIDE works, you should be able to simply drop the above
> definition. The generic percpu.h will define it.

Ping.

--
tejun