linux/include/scsi
Johannes Thumshirn 210588c034 scsi: Add intermediate STARGET_REMOVE state to scsi_target_state
commit f05795d3d7 upstream.

Add intermediate STARGET_REMOVE state to scsi_target_state to avoid
running into the BUG_ON() in scsi_target_reap(). The STARGET_REMOVE
state is only valid in the path from scsi_remove_target() to
scsi_target_destroy() indicating this target is going to be removed.

This re-fixes the problem introduced in commits bc3f02a795 ("[SCSI]
scsi_remove_target: fix softlockup regression on hot remove") and
4099819356 ("scsi: restart list search after unlock in
scsi_remove_target") in a more comprehensive way.

[mkp: Included James' fix for scsi_target_destroy()]

Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de>
Fixes: 4099819356
Reported-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Tested-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com>
Reviewed-by: Ewan D. Milne <emilne@redhat.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Reviewed-by: James Bottomley <jejb@linux.vnet.ibm.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-06-01 12:15:54 -07:00
..
fc
fc_encode.h
fc_frame.h
fcoe_sysfs.h
iscsi_if.h
iscsi_proto.h
libfc.h
libfcoe.h
libiscsi_tcp.h
libiscsi.h
libsas.h
osd_attributes.h
osd_initiator.h
osd_ore.h
osd_protocol.h
osd_sec.h
osd_sense.h
osd_types.h
sas_ata.h
sas.h
scsi_bsg_iscsi.h
scsi_cmnd.h
scsi_common.h scsi: Protect against buffer possible overflow in scsi_set_sense_information 2015-07-23 22:53:05 -07:00
scsi_dbg.h
scsi_device.h scsi: Add intermediate STARGET_REMOVE state to scsi_target_state 2016-06-01 12:15:54 -07:00
scsi_devinfo.h SCSI: add 1024 max sectors black list flag 2015-04-27 09:38:06 -07:00
scsi_dh.h scsi_dh: kill struct scsi_dh_data 2015-08-28 13:14:57 -07:00
scsi_driver.h
scsi_eh.h Revert "libata-eh: Set 'information' field for autosense" 2015-08-03 11:41:33 -04:00
scsi_host.h Merge branch 'mkp-fixes' into fixes 2015-12-03 09:32:33 -08:00
scsi_ioctl.h
scsi_proto.h Split SCSI header files 2015-06-01 07:32:42 -07:00
scsi_tcq.h scsi: use host wide tags by default 2015-11-09 17:11:57 -08:00
scsi_transport_fc.h
scsi_transport_iscsi.h iSCSI: let session recovery_tmo sysfs writes persist across recovery 2015-07-30 12:43:00 -07:00
scsi_transport_sas.h
scsi_transport_spi.h
scsi_transport_srp.h IB/srp: Avoid using uninitialized variable 2015-07-14 13:20:09 -04:00
scsi_transport.h
scsi.h Move code that is used both by initiator and target drivers 2015-06-01 07:32:43 -07:00
scsicam.h
sg.h
srp.h IB/srp: Add 64-bit LUN support 2015-05-18 13:35:56 -04:00