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

Tejun Heo
2009-04-01T00:10:31Z

Hello, Martin.

Martin Schwidefsky wrote:
> On Wed, 25 Mar 2009 22:34:46 +0900
> Tejun Heo <tj@kernel.org> wrote:
>
>> Martin Schwidefsky wrote:
>>> On Wed, 25 Mar 2009 22:21:03 +0900
>>> Tejun Heo <tj@kernel.org> wrote:
>>>
>>>> Martin Schwidefsky wrote:
>>>>>> Martin's original patch should do the trick although it would be
>>>>>> slower for static symbols. I'll merge it and post the tree.
>>>>> No, my original patch doesn't work. It will break modules that use
>>>>> static per-cpu variables.
>>>> Oops. Even with the default offset adding macros? Heh... I think it
>>>> would be best to wait for your fix then.
>>> We could use HAVE_LEGACY_PER_CPU_AREA for the time being.
>> Eh... The thing is that the patch kills the legacy default allocator.
>> We can move it into arch/s390 for the time being but it would be
>> simpler if the constant_p thing or something else could work. :-) Do
>> you think figuring out how to fix it will take long?
>
> I got the dynamic cpu allocator to work with the patch below. Anybody
> with an objection against the SHIFT_PERCPU_VAR macro ?

One of the main goals of the percpu allocator is removing the
distinction between statically and dynamically allocated percpu
variables, so that it can be treated like other normal variables. For
all archs other than s390, alpha and ia64, achieving this is easy, so
I wish we could come up with solution for the three archs too. Is it
possible to do similar stuff with pointer values with input
constraint which can take both constant and variable?

Thanks.

--
tejun