isci: replace isci_remote_device completion with event queue
authorDan Williams <dan.j.williams@intel.com>
Fri, 4 Mar 2011 20:10:29 +0000 (12:10 -0800)
committerDan Williams <dan.j.williams@intel.com>
Sun, 3 Jul 2011 10:55:29 +0000 (03:55 -0700)
commit6ad31fec306d532031b2f778f8656385df1b9d8f
treec23640084d82b5ff534fe837300ac64d3a92143e
parent8acaec1593526f922ff46812d99abf9aab5c8b43
isci: replace isci_remote_device completion with event queue

Replace the device completion infrastructure with the controller wide
event queue.  There was a potential for the stop and ready notifications
to corrupt each other, now that cannot happen.

The stop pending flag cannot be used until devices are statically
allocated.  We temporarily need to maintain a completion to handle
waiting for an object that has disappeared, but we can at least stop
scribbling on freed memory.

A future change will also get rid of the "stopping" state as it should
not be exposed to the rest of the driver.

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
drivers/scsi/isci/events.c
drivers/scsi/isci/host.c
drivers/scsi/isci/host.h
drivers/scsi/isci/remote_device.c
drivers/scsi/isci/remote_device.h