linux/drivers/target
Xiubo Li a94a2572b9 scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes
Currently there is one cmd timeout timer and one qfull timer for each udev,
and whenever any new command is coming in we will update the cmd timer or
qfull timer. For some corner cases the timers are always working only for
the ringbuffer's and full queue's newest cmd. That's to say the timer won't
be fired even if one cmd has been stuck for a very long time and the
deadline is reached.

This fix will keep the cmd/qfull timers to be pended for the oldest cmd in
ringbuffer and full queue, and will update them with the next cmd's
deadline only when the old cmd's deadline is reached or removed from the
ringbuffer and full queue.

Signed-off-by: Xiubo Li <xiubli@redhat.com>
Acked-by: Mike Christie <mchristi@redhat.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2019-01-11 20:58:52 -05:00
..
iscsi scsi: target/iscsi: fix error msg typo when create lio_qr_cache failed 2019-01-08 21:57:25 -05:00
loopback scsi: remove the use_clustering flag 2018-12-18 23:19:21 -05:00
sbp scsi: target: replace fabric_ops.name with fabric_alias 2018-11-28 18:50:59 -05:00
tcm_fc scsi: target: replace fabric_ops.name with fabric_alias 2018-11-28 18:50:59 -05:00
Kconfig
Makefile
target_core_alua.c scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops 2018-11-28 18:50:58 -05:00
target_core_alua.h
target_core_configfs.c scsi: target: add device vendor_id configfs attribute 2018-12-07 21:54:33 -05:00
target_core_device.c scsi: target: perform t10_wwn ID initialisation in target_alloc_device() 2018-12-07 21:54:33 -05:00
target_core_fabric_configfs.c scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops 2018-11-28 18:50:58 -05:00
target_core_fabric_lib.c
target_core_file.c
target_core_file.h
target_core_hba.c
target_core_iblock.c
target_core_iblock.h
target_core_internal.h scsi: target/core: Make ABORT and LUN RESET handling synchronous 2018-12-07 21:22:55 -05:00
target_core_pr.c scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops 2018-11-28 18:50:58 -05:00
target_core_pr.h
target_core_pscsi.c SCSI misc on 20181224 2018-12-28 14:48:06 -08:00
target_core_pscsi.h
target_core_rd.c
target_core_rd.h
target_core_sbc.c
target_core_spc.c scsi: target: remove hardcoded T10 Vendor ID in INQUIRY response 2018-12-07 21:54:33 -05:00
target_core_stat.c scsi: target: consistently null-terminate t10_wwn strings 2018-12-07 21:54:33 -05:00
target_core_tmr.c scsi: target/core: Make ABORT and LUN RESET handling synchronous 2018-12-07 21:22:55 -05:00
target_core_tpg.c scsi: target/core: Simplify transport_clear_lun_ref() 2018-12-07 21:20:07 -05:00
target_core_transport.c SCSI misc on 20181224 2018-12-28 14:48:06 -08:00
target_core_ua.c scsi: target: drop unnecessary get_fabric_name() accessor from fabric_ops 2018-11-28 18:50:58 -05:00
target_core_ua.h
target_core_user.c scsi: tcmu: avoid cmd/qfull timers updated whenever a new cmd comes 2019-01-11 20:58:52 -05:00
target_core_xcopy.c scsi: target/core: Make sure that target_wait_for_sess_cmds() waits long enough 2018-12-07 21:20:07 -05:00
target_core_xcopy.h