Messages in this thread | | | Date | Wed, 25 Mar 2009 15:00:35 +0100 | From | Martin Schwidefsky <> | Subject | Re: [GIT RFC] percpu: use dynamic percpu allocator as the default percpu allocator |
| |
On Wed, 25 Mar 2009 20:51:31 +0900 Tejun Heo <tj@kernel.org> wrote:
> > With your patches and a RELOC_HIDE version that uses the GOTENT > > indirection the kernel won't compile because the "X" constraint for > > the GOTENT access needs a symbol and there are quite a few users that > > pass a pointer. I do not see a simple solution for that problem yet. > > Ah... okay. Now I get it. It wasn't expecting variables there. How > about doing the following? > > #define SHIFT_PERCPU_PTR(ptr, offset) (({ \ > if (__builtin_constant_p(ptr)) \ > do GOTENT trick; \ > else \ > RELOC_HIDE(); \ > }))
That doesn't work because __builtin_constant_p is false for variable symbols. I would need a __builtin_symbol_p but that doesn't exist.
-- blue skies, Martin.
"Reality continues to ruin my life." - Calvin.
| |