]> git.baikalelectronics.ru Git - kernel.git/commit
scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt
authorRanjan Kumar <ranjan.kumar@broadcom.com>
Tue, 28 Feb 2023 14:08:30 +0000 (06:08 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 22 Mar 2023 12:33:41 +0000 (13:33 +0100)
commit475397c03d3c9e3cfe761833ba7ca33fb82724d0
tree158c085b26d4ece0e4c08e9d2213f72cd5b552cf
parent90c78850e0b602c4d50c290de0670783b41037d6
scsi: mpi3mr: ioctl timeout when disabling/enabling interrupt

[ Upstream commit 593fc5218168b2a32192261e31a2420644058e60 ]

As part of Task Management handling, the driver will disable and enable the
MSIx index zero which belongs to the Admin reply queue. During this
transition the driver loses some interrupts and this leads to Admin request
and ioctl timeouts.

After enabling the interrupts, poll the Admin reply queue to avoid
timeouts.

Signed-off-by: Ranjan Kumar <ranjan.kumar@broadcom.com>
Signed-off-by: Sreekanth Reddy <sreekanth.reddy@broadcom.com>
Link: https://lore.kernel.org/r/20230228140835.4075-2-ranjan.kumar@broadcom.com
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Stable-dep-of: 6d290ac5b58a ("scsi: mpi3mr: Fix expander node leak in mpi3mr_remove()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/scsi/mpi3mr/mpi3mr.h
drivers/scsi/mpi3mr/mpi3mr_fw.c
drivers/scsi/mpi3mr/mpi3mr_os.c