>
>> 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

>
>> 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

_______________________________________________
storage-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/storage-discuss

Reply via email to