lkml.org 
[lkml]   [2009]   [Apr]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [GIT RFC] percpu: use dynamic percpu allocator as the default percpu allocator
Hello, Martin.

Martin Schwidefsky wrote:
> Yes, @GOTENT is a relocation against the GOT slot that contains the
> address of the symbol. It is a special version of @GOT that uses larl
> to locate the got slot directly without the need of a got base pointer.
>
> The code sequence with @GOT:
>
> larl %r12,_GLOBAL_OFFSET_TABLE_
> lg %r1,symbol@GOT(%r12)
>
> is equivalent to:
>
> larl %r1,symbol@GOTENT
> lg %r1,0(%r1)
>
> The advantage of the second code sequence is that it need a single
> register and the size of the GOT is not limited to 4K as in the first
> example (the offset in an RX format instruction is limited to 12 bits -
> but that is probably something you don't want to know ;-).

Maybe we can build indirection pointer manually by twiddling with
DEFINE_PER_CPU() in such a way that it doesn't have to distinguish
symbols and variables?

--
tejun


\
 
 \ /
  Last update: 2009-04-01 10:59    [W:0.625 / U:0.068 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site