aboutsummaryrefslogtreecommitdiff
path: root/drivers/mfd/cs47l90-tables.c
diff options
context:
space:
mode:
authorJacob Keller <jacob.e.keller@intel.com>2023-07-10 13:41:28 -0700
committerTony Nguyen <anthony.l.nguyen@intel.com>2023-07-21 08:49:37 -0700
commit91896c8acce23d33ed078cffd46a9534b1f82be5 (patch)
treee29758073a7a5baea98f84a61f5a6584e726eeed /drivers/mfd/cs47l90-tables.c
parenta2f054c10bef0b54600ec9cb776508443e941343 (diff)
iavf: check for removal state before IAVF_FLAG_PF_COMMS_FAILED
In iavf_adminq_task(), if the function can't acquire the adapter->crit_lock, it checks if the driver is removing. If so, it simply exits without re-enabling the interrupt. This is done to ensure that the task stops processing as soon as possible once the driver is being removed. However, if the IAVF_FLAG_PF_COMMS_FAILED is set, the function checks this before attempting to acquire the lock. In this case, the function exits early and re-enables the interrupt. This will happen even if the driver is already removing. Avoid this, by moving the check to after the adapter->crit_lock is acquired. This way, if the driver is removing, we will not re-enable the interrupt. Fixes: fc2e6b3b132a ("iavf: Rework mutexes for better synchronisation") Signed-off-by: Jacob Keller <jacob.e.keller@intel.com> Tested-by: Rafal Romanowski <rafal.romanowski@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com>
Diffstat (limited to 'drivers/mfd/cs47l90-tables.c')
0 files changed, 0 insertions, 0 deletions