On Sun, Apr 29, 2001 at 04:18:27PM -0400, Gregory Maxwell wrote:
> having both the code and a comprehensive jump-table might become tough in a
In the x86-64 implementation there's no jump table. The original design
had a jump table but Peter raised the issue that indirect jumps are very
costly and he suggested to jump to a fixed virtual address instead, I
agreed with his suggestion. So this is what I implemented for x86-64
with regard to the userspace vsyscall API (which will be used by glibc):
enum vsyscall_num {
__NR_vgettimeofday,
__NR_vtime,
};
#define VSYSCALL_ADDR(vsyscall_nr) (VSYSCALL_START+VSYSCALL_SIZE*(vsyscall_nr))
the linker can prelink the vsyscall virtual address into the binary as a
weak symbol and the dynamic linker will need to patch it only if
somebody is overriding the weak symbol with a LD_PRELOAD.
Virtual address space is relatively cheap. Currently the 64bit
vgettimeofday bytecode + data is nearly 200 bytes, and the first two
slots are large 512bytes each. So with 1024 bytes we do the whole thing,
and we still have space for further 6 vsyscalls without paying any
additional tlb entry.
(the implementation of the above #define will change shortly but the
VSYSCALL_ADDR() API for glibc will remain the same)
Andrea
-
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/
- Re: X15 alpha release: as fast as TUX but in user space (... David S. Miller
- Re: X15 alpha release: as fast as TUX but in user sp... Ingo Oeser
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in use... Gregory Maxwell
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in use... Gregory Maxwell
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in use... Ingo Oeser
- Re: X15 alpha release: as fast as TUX but in use... Gregory Maxwell
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in use... Andrea Arcangeli
- Re: X15 alpha release: as fast as TUX but in use... Arjan van de Ven
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in use... Alan Cox
- Re: X15 alpha release: as fast as TUX but in user sp... Jamie Lokier
- Re: X15 alpha release: as fast as TUX but in use... Andrea Arcangeli
- Re: X15 alpha release: as fast as TUX but in user space (... dean gaudet
- Re: X15 alpha release: as fast as TUX but in user sp... H. Peter Anvin
- Re: X15 alpha release: as fast as TUX but in use... Richard Gooch
- Re: X15 alpha release: as fast as TUX but in user sp... Jim Gettys
- Re: X15 alpha release: as fast as TUX but in use... H. Peter Anvin

