Re: broken local_t on i386

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 12 June 2006 20:27, Christoph Lameter wrote:
> On Mon, 12 Jun 2006, Andi Kleen wrote:
> > It does, but the per cpu data that everybody uses doesn't reside in the
> > PDA because it wasn't possible to make this work with binutils
> >
> > It would require a relocation relative to another symbol which isn't
> > really supported.
>
> I dont think you need a relocation relative to another symbol. Map the
> pda to a virtual adress range. That is then translated with a
> processor specific page table to various physical addresses.

Per processor page tables are not really practical on x86-64. They would
get really messy because you would need to duplicate the top level
of the page tables per CPU.

>
> > At some point I considered using runtime patching to work around
> > this limitation, but it would be some work and relatively complex.
>
> Well this would drastically decreased the overhead for PDA access and fix
> local.t

Saving two instructions? And PDA is usually in L1. I doubt you could benchmark
a difference.

-Andi
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux