CVSROOT:        /cvs
Module name:    src
Changes by:     d...@cvs.openbsd.org    2010/07/06 01:18:18

Modified files:
        sys/dev/ic     : mpi.c mpivar.h 

Log message:
if we get an event notification that requires acknowledgement while
we're busy, we might not be able to allocate a ccb via scsi_ioh_get
if the pool is empty. this means we wont ack the event, which in
turn means we wont receive further event notifications.

this cuts the event ack code over to using a scsi_iohandler. the
eventack iohandler will be called as soon as a ccb becomes available
for it to use. this guarantees reliable event handling and
acknowledgement, despite how busy the controller might be.

this has bugging me ever since i wrote the event handling code.
tested by hotplugging sata disks.

Reply via email to