[SCSI] mpt2sas: Expander remove fails when it is processing another expander add.
authorKashyap, Desai <kashyap.desai@lsi.com>
Wed, 23 Sep 2009 11:52:37 +0000 (17:22 +0530)
committerJames Bottomley <James.Bottomley@suse.de>
Thu, 29 Oct 2009 17:03:08 +0000 (13:03 -0400)
commita28eb222e3890a4ce190a430e24c483d2b5bb13b
treea0e0a297c7dc627a5c2c34687f17349d22772688
parentc5e039be7e81168a9156e801cfef2adae72e775b
[SCSI] mpt2sas: Expander remove fails when it is processing another expander add.

This handles the case where driver receives a expander removal event while
it is in the middle of processing an expander add event. The existing
implementation will stop processing futher device adds when a expander
delete arrives on top of add expander add. Due to a sanity check in the
driver, the devices there were not added, were never handshaked to firmware
with the device removal handshake protocal. Since the driver didnt' do the
handshake, the controller never provide further add events.  To fix this
issue, the sanity check was removed so the driver will always do the device
removal handshake protocal.

Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Signed-off-by: Eric Moore <Eric.moore@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
drivers/scsi/mpt2sas/mpt2sas_scsih.c