Hello,

I am writing a SCSI HBA driver and one of the requirements is to
asynchronously report the SCSI devices as and when
they appear on the SAN. I have been using the ndi calls and see a few
issues with it.

My driver rejects all tran_tgt_init calls that come down corresponding
to the entries in the driver.conf. I do this to avoid duplicate nodes in
the device tree. I accept tran_tgt_init calls for only the dip's that I
created using the ndi_devi_alloc. This works fine most of the time.
However,
I see issues when my driver is the boot driver. In this case, my driver
discovers the boot device and requests for a scsi probe using the
ndi_devi_online_async call. Somehow, this scsi probe doesn't come down
in time. The boot sequence starts off and does not find the boot
device, since my driver had rejected the tran_tgt_init call for the boot
device listed in driver.conf. If I wait long enough in my driver attach
after
making the ndi_devi_online_async call, I see that the scsi probe that I
had requested comes down and the boot proceeds.

How do I get around this random delay ? How can I make sure that the
scsi probe that I request will complete before the boot sequence ?

Regards,
Gautam

This message contains Emulex confidential information intended only for
specific recipients and is not to be forwarded to anyone else. If you
have received this message in error, please delete it immediately. Thank
you.


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

Reply via email to