On Thu, Sep 18, 2008 at 9:05 AM, Sumit Gupta <[EMAIL PROTECTED]> wrote: > >> >>> 2. Register the lu provider in your _init() routine >> >> Why is it important to register in _init(), rather than say attach() ? >> It seems to be related to some design decision, but it isn't clear why >> exactly. > > The idea is to register a provider before you start (or can start) > registering LUs. When exactly that is done is implementation detail. A > common approach is to register the provider in _init() but there is no hard > requirement around that.
Sumit, thanks for your explanation. > > Sumit > >> >>> 3. Whenever you have a new LU to export to stmf, allocate a stmf_lu_t >>> using >>> stmf_alloc , initialize it with various entry points and register it with >>> the framework. >>> 4. The framework will online the LU (using your registered lu_ctl() entry >>> point) and drive the SCSI task flow using the entry points in the >>> stmf_lu_t >>> >>> The documentation on the various LU entry points in the stmf spec has a >>> lot >>> of details on them. Also it points to other stmf functions which are >>> relevant in the contaxt of a given LU entry point. The flow diagram at >>> the >>> end of stmf spec also provides information on the order in which these >>> entry >>> points are called. You can also use sbd source code as an example. The >>> file >>> sbd_scsi.c is what is most relevant in this regard. >>> >> >> I am chewing through the doc and sure will have more questions soon. >> Thanks again ! >> >> -- >> Regards, >> Cyril > > -- Regards, Cyril _______________________________________________ storage-discuss mailing list [email protected] http://mail.opensolaris.org/mailman/listinfo/storage-discuss
