]> git.proxmox.com Git - mirror_ubuntu-bionic-kernel.git/commit
scsi: qla2xxx: Fix abort command deadlock due to spinlock
authorQuinn Tran <quinn.tran@cavium.com>
Mon, 4 Dec 2017 22:45:09 +0000 (14:45 -0800)
committerThadeu Lima de Souza Cascardo <cascardo@canonical.com>
Thu, 15 Mar 2018 21:29:15 +0000 (18:29 -0300)
commit96aca56c2cf1edb007804e63d30a21096e9f2059
treeeb6ab49d3e823f80c71a6828600c07f924d08941
parentd0763d2d09cda2572f762d03cf9b7aefa01849e9
scsi: qla2xxx: Fix abort command deadlock due to spinlock

BugLink: http://bugs.launchpad.net/bugs/1756100
commit b0dcce746b32ac573343ad39cb3dc485030de95e upstream.

Original code acquires hardware_lock to add Abort IOCB onto driver
request queue for processing. However, abort_command() will also acquire
hardware lock to look up sp pointer before issuing abort IOCB command
resulting into a deadlock. This patch safely removes the possible
deadlock scenario by removing extra spinlock.

Fixes: 6eb54715b54bb ("qla2xxx: Added interface to send explicit LOGO.")
Cc: <stable@vger.kernel.org> # 4.10+
Signed-off-by: Quinn Tran <quinn.tran@cavium.com>
Signed-off-by: Himanshu Madhani <himanshu.madhani@cavium.com>
Reviewed-by: Hannes Reinecke <hare@suse.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Thadeu Lima de Souza Cascardo <cascardo@canonical.com>
drivers/scsi/qla2xxx/qla_iocb.c