Searched hist:"6 d626150d6d1c14f2f3d4f907fd0d4381f2c0d35" (Results 1 – 1 of 1) sorted by relevance
/linux/drivers/scsi/ |
H A D | libiscsi.c | diff 6d626150d6d1c14f2f3d4f907fd0d4381f2c0d35 Fri Jun 17 00:45:56 CEST 2022 Mike Christie <michael.christie@oracle.com> scsi: iscsi: Try to avoid taking back_lock in xmit path
We need the back lock when freeing a task, so we hold it when calling __iscsi_put_task() from the completion path to make it easier and to avoid having to retake it in that path. For iscsi_put_task() we just grabbed it while also doing the decrement on the refcount but it's only really needed if the refcount is zero and we free the task. This modifies iscsi_put_task() to just take the lock when needed then has the xmit path use it. Normally we will then not take the back lock from the xmit path. It will only be rare cases where the network is so fast that we get a response right after we send the header/data.
Link: https://lore.kernel.org/r/20220616224557.115234-9-michael.christie@oracle.com Reviewed-by: Lee Duncan <lduncan@suse.com> Signed-off-by: Mike Christie <michael.christie@oracle.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
|