mirror of
https://github.com/torvalds/linux.git
synced 2026-06-20 21:23:06 +02:00
Target drivers must call target_sess_cmd_list_set_waiting() and target_wait_for_sess_cmds() before freeing a session. Since freeing a session is only safe after all commands that are associated with a session have finished, make target_wait_for_sess_cmds() also wait for commands that are being aborted. Instead of setting a flag in each pending command from target_sess_cmd_list_set_waiting() and waiting in target_wait_for_sess_cmds() on a per-command completion, only set a per-session flag in the former function and wait on a per-session completion in the latter function. This change is safe because once a SCSI initiator system has submitted a command a target system is always allowed to execute it to completion. See also commit |
||
|---|---|---|
| .. | ||
| iscsi | ||
| target_core_backend.h | ||
| target_core_base.h | ||
| target_core_fabric.h | ||