From 2e59f013993a74bf31366a59bcf36be830d0f058 Mon Sep 17 00:00:00 2001 From: Ben Hutchings Date: Wed, 30 Apr 2014 13:22:22 +0100 Subject: [PATCH] Revert "isci: fix reset timeout handling" This reverts commit 584ec12265192bf49dfa270d517380f6723a6956, which was commit ddfadd7736b677de2d4ca2cd5b4b655368c85a7a upstream. It causes boot failure on 3.2 although no such problem occurs upstream. Reported-by: Ondrej Zary Signed-off-by: Ben Hutchings Acked-by: Dan Williams --- drivers/scsi/isci/port_config.c | 7 +++++++ drivers/scsi/isci/task.c | 2 +- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/isci/port_config.c b/drivers/scsi/isci/port_config.c index 21a676931a27..38a99d281141 100644 --- a/drivers/scsi/isci/port_config.c +++ b/drivers/scsi/isci/port_config.c @@ -610,6 +610,13 @@ static void sci_apc_agent_link_up(struct isci_host *ihost, sci_apc_agent_configure_ports(ihost, port_agent, iphy, true); } else { /* the phy is already the part of the port */ + u32 port_state = iport->sm.current_state_id; + + /* if the PORT'S state is resetting then the link up is from + * port hard reset in this case, we need to tell the port + * that link up is recieved + */ + BUG_ON(port_state != SCI_PORT_RESETTING); port_agent->phy_ready_mask |= 1 << phy_index; sci_port_link_up(iport, iphy); } diff --git a/drivers/scsi/isci/task.c b/drivers/scsi/isci/task.c index 60a530fd5f03..e294d118d89c 100644 --- a/drivers/scsi/isci/task.c +++ b/drivers/scsi/isci/task.c @@ -1390,7 +1390,7 @@ int isci_task_I_T_nexus_reset(struct domain_device *dev) spin_unlock_irqrestore(&ihost->scic_lock, flags); if (!idev || !test_bit(IDEV_EH, &idev->flags)) { - ret = -ENODEV; + ret = TMF_RESP_FUNC_COMPLETE; goto out; } -- 2.39.2