Commit cb7fc545 authored by Jason Yan's avatar Jason Yan Committed by Xie XiuQi
Browse files

ahci: prevent freezing port when EH is running



euler inclusion
category: bugfix
bugzilla: NA
CVE: NA

---------------------------

Trinity report a warning for this patch:
WARNING: CPU: 1 PID: 118 at ../drivers/ata/libata-eh.c:4016
ata_eh_finish+0x15a/0x170

Fixing the race condition between EH and interrupt by making the EH
thread re-enter again is a little overkill and IO will get through
after the scsi_run_host_queues() and before SHOST_RECOVERY is set agian
in scsi_restart_operations().

If EH thread is already running, no need to freeze port and schedule
EH again.

Fixes: a7d2fef75b83 ("scsi: ata: Fix a race condition between scsi error handler and ahci interrupt")
Signed-off-by: default avatarJason Yan <yanaijie@huawei.com>
Reviewed-by: default avatarzhengbin <zhengbin13@huawei.com>
Signed-off-by: default avatarYang Yingliang <yangyingliang@huawei.com>
parent 73f1359d
Loading
Loading
Loading
Loading
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please to comment