linux/drivers/scsi/isci
Dan Williams f139303d17 isci: merge ssp task management substates into primary state machine
Remove usage of the request substate machine for ssp task management
requests identified by:
	ireq->ttype == tmf_task && dev->dev_type == SAS_END_DEV;

The only routine that checks the base 'started' state is
scic_sds_io_request_tc_completion which calls the substate machine
handler if we are not in the 'started' state or we are 'started' and no
substate machine is defined.  This routine requires no conversion
because we have transitioned out of 'started' and the substate routine
will be called naturally as a result.

There are also no side effects of this conversion on exiting the
'started', state because it only stops the substate machine, which is no
longer relevant for this transaction type.

Reported-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
2011-07-03 04:04:47 -07:00
..
firmware isci: namespacecheck cleanups 2011-07-03 04:00:36 -07:00
Makefile isci: merge ssp task management substates into primary state machine 2011-07-03 04:04:47 -07:00
host.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
host.h isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
init.c isci: move core/controller to host 2011-07-03 04:04:47 -07:00
isci.h isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
phy.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
phy.h isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
pool.h isci: move core/controller to host 2011-07-03 04:04:47 -07:00
port.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
port.h isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
port_config.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
probe_roms.c isci: move core/controller to host 2011-07-03 04:04:47 -07:00
probe_roms.h isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
registers.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
remote_device.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
remote_device.h isci: unify constants 2011-07-03 04:04:47 -07:00
remote_node_context.c isci: uplevel port infrastructure 2011-07-03 04:04:47 -07:00
remote_node_context.h isci: uplevel state machine 2011-07-03 04:04:47 -07:00
remote_node_table.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
remote_node_table.h isci: unify constants 2011-07-03 04:04:47 -07:00
request.c isci: merge ssp task management substates into primary state machine 2011-07-03 04:04:47 -07:00
request.h isci: merge ssp task management substates into primary state machine 2011-07-03 04:04:47 -07:00
sas.h isci: removing intel_*.h headers 2011-07-03 04:04:46 -07:00
sata.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
sata.h isci: Convert ATA defines to Linux native defines 2011-07-03 04:04:46 -07:00
scu_completion_codes.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
scu_event_codes.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
scu_remote_node_context.h isci: move remote_device handling out of the core 2011-07-03 04:00:38 -07:00
scu_task_context.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
scu_unsolicited_frame.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00
smp_request.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
state_machine.c isci: uplevel state machine 2011-07-03 04:04:47 -07:00
state_machine.h isci: uplevel state machine 2011-07-03 04:04:47 -07:00
stp_request.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
stp_request.h isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
task.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
task.h isci: unify constants 2011-07-03 04:04:47 -07:00
timers.c isci: unify constants 2011-07-03 04:04:47 -07:00
timers.h isci: rework timer api 2011-07-03 03:55:28 -07:00
unsolicited_frame_control.c isci: uplevel request infrastructure 2011-07-03 04:04:47 -07:00
unsolicited_frame_control.h isci: uplevel register hardware data structures and unsolicited frame handling 2011-07-03 04:04:47 -07:00