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

Re: [RFC][PATCH] linux-2.6.2-rc2_vsyscall-gtod_B1.patch


Jamie Lokier <jamie _at_ shareable.org> writes:

> Ulrich Drepper wrote:
> > ~ alternatively use the symbol table the vdso has.  Export the new code
> > only via the symbol table.  No fixed address for the function, the
> > runtime gets it from the symbol table.  glibc will use weak symbol
> > references; if the symbol isn't there, the old code is used.  This will
> > require that every single optimized syscall needs to be handled special.
> > 
> > 
> > I personally like the first approach better.  The indirection table can
> > maintained in sync with the syscall table inside the kernel.  It all
> > comes at all times from the same source.  The overhead of the memory
> > load should be neglectable.
> 
> I like the second approach more.  You can change glibc to look up the
> weak symbol for _all_ syscalls, then none of them are special and it
> will work with future kernel optimisations.

There is one more piece to consider with either approach.  The
calling conventions.

With the x86-64 optimized vsyscall the syscall number does
not need to be placed into a register, because you have used
the proper entry point.  For any syscall worth tuning in
user space I suspect that level of optimization would be
beneficial.  A fast call path that does not waste a register.

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


この情報があなたの探していたものかどうか選択してください。
yes/まさにこれだ!   no/違うなぁ   part/一部見つかった   try/これで試してみる

あなたが探していた情報はどのようなことか、ご自由に記入下さい。特に「まさにこれだ!」と言う場合は記入をお願いします。
例:「複数のマシンからCATV経由でipmasqueradeを利用してWebを参照したい場合の設定について」
Follow-Ups: References: