[OpenAFS-devel] Fully Functional Client on Linux 2.6
Jeffrey Hutzelman
jhutz@cmu.edu
Sun, 04 Jul 2004 19:50:08 -0400
On Monday, July 05, 2004 01:21:24 +0200 Alexander Bostr=F6m <abo@kth.se>=20
wrote:
> m=E5n 2004-07-05 klockan 00.41 skrev Jeffrey Hutzelman:
>> On Sunday, July 04, 2004 23:44:07 +0200 Tomas Olsson
>> <tol@stacken.kth.se> wrote:
>>
>> > Besides, I'm not sure that patching the syscall table is all that
>> > beautiful a practice.
>>
>> No, of course not. There should be a registration mechansim.
> A generic registration mechanism was proposed and rejected in this
> thread: http://seclists.org/lists/linux-kernel/2002/Oct/1158.html.
Yup. The basic argument is that directly replacing an entry in=20
sys_call_table is not actually safe on some architectures. A reasonable=20
alternative (a secondary dispatch table used by sys_ni_syscall()) was=20
proposed and rejected.
> Did anyone even propose a patch that added a hook for the AFS syscall
> specifically?
Yes. I don't recall whether this was discussed on lkml or done entirely=20
out-of-band. It was proposed. It never happened.
> The kernel developers decided that modules shouldn't register syscalls,
> they should all be in the kernel at compile time.
Because, of course, the kernel developers have already thought of all=20
functionality that anyone might ever need.
> AFS didn't actually
> need the syscall
... except to set initial CM configuration, start our various kernel=20
threads, manage PAGs and tokens, and perform control operations on files in =
AFS. If you don't care about doing any of those things, then sure, we=20
don't need the syscall.