[OpenAFS-devel] unix afsd organization
Jeffrey Hutzelman
jhutz@cmu.edu
Wed, 17 Jun 2009 16:14:38 -0400
--On Wednesday, June 17, 2009 02:33:47 PM -0500 Andrew Deason
<adeason@sinenomine.net> wrote:
> RT 124947 [1] has a patch for splitting up afsd into a kind of backend
> and frontend of sorts. The "backend" is all of the logic of command-line
> parsing, and issuing afs syscalls, and a few other things. The
> "frontend", of which now there's only one but there could be many,
> consists of code that's very specific to using the afs kernel module
> client: how syscalls are made, mounting /afs, etc. This division allows
> for easily swapping out the code for kernel module with, say, the
> userspace kernel code.
I'm not sure why you would ever want to run afsd other than to set up the
AFS kernel module.
I think maybe what you're looking for is to take the complex bits of logic
that should be shared, like cache setup, and move them out into a library
that can be called by the userspace cache manager.