Skip site navigation (1)Skip section navigation (2)
Date:      10 Oct 1998 15:06:31 -0400
From:      "Robert V. Baron" <rvb@cs.cmu.edu>
To:        Peter Wemm <peter@FreeBSD.ORG>
Cc:        cvs-committers@FreeBSD.ORG, cvs-all@FreeBSD.ORG
Subject:   Re: cvs commit: src/sys/sys kernel.h
Message-ID:  <yzsr9wg9qyw.fsf@sicily.odyssey.cs.cmu.edu>
In-Reply-To: Peter Wemm's message of Fri, 9 Oct 1998 16:03:27 -0700 (PDT)
References:  <199810092303.QAA06098@freefall.freebsd.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Happy to see that LKD's are being worked on.  There is a structural
problem in lkm design.  Maybe we can do it right on lkd's.  The
problem is that there is a concept of a module.  Then there is the
idea that there are services made available.  So it is easy to imagine
that a block of code -- a module, would make serveral services
available say vfs, dev, maybe even inodes.  So I would argue that the
private data of a module, should be a linked list if it has to be
explicit at all.  Then when you call lkmdispatch(), you pass the
module pointer and the service you wish to initialize.  You do this as
many times as necessary to setup the module.  (You do not pass the
service as the private data of the module).  To make things a bit more
concrete, look at coda/coda_fbsd.c and see what had to happen to tuck
Coda in as an lkm.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?yzsr9wg9qyw.fsf>