Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1727945ybz; Sat, 18 Apr 2020 07:17:03 -0700 (PDT) X-Google-Smtp-Source: APiQypKYB+vHgUCZZiIxE6lWNZzuCzVW1nJYfapVkpJwgY+lG9jobs5StQaCP34yP2rhW2kTFryR X-Received: by 2002:a17:906:f288:: with SMTP id gu8mr8152565ejb.281.1587219423320; Sat, 18 Apr 2020 07:17:03 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587219423; cv=none; d=google.com; s=arc-20160816; b=hoH/T7CBSLA8Aq0Hx7fymw/X73GOgmqtHZiz6iA6SiT5OXlPNlVa5bKZQO29sHe/c4 iw8ZxE/83gQ9Hs9i+oaZoN6nkbhqvirLGB2AyXSkjSfDw6TO5nH7ErRx6eLb6X3wVDCU mYYKORXpmmLXkf6eNhksZSPvZ8Rha1JyAk9axyfXob/uZcQ2lFAgGlXBr5cU1AGa3J54 hquTbmVPrCxWbPmZeUZDx/s5u033lMlIIpJ7jBXEqlzQnrEX6BmlLyPydy39o9OS/Zts U2aGC0/t0qCVmt1YiigAvfP/H2QcGNRJYwGeo+blqnNKQU9nvwNFazlQVGEOfS2XjF7q yPFQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=wovx1rfLb39v9HLVAictmr0GxTmvEMp3pdIwhqt0VjA=; b=XyjWN3bKzhK4bcG/GhYR3IYrrpET/M40NmwegGR3iIJmSVz3Rp3EMTqSVQpqoYklyj eByzD/FoSSThXOOdJN09h7GcE3keoVX2psvOb+H63L6T5MFbm0sLtMmhmeQPMhPxkeIb yiPesSbgqMsHBm4PGIi5ucatzx8fYD7zPHtxsWsVUuGZK+Al0L/qaBn2RJ9GUfI0zxR1 bSk5+WUVfhWz8sF5BCGzDNmJ30LW6fiJ7j/iR2TQKCqJNlLGqgZ/reYywuymp6s+Qcc2 ACG/pUwqHIATHWt/NtPUL3+NGj1t+abo4VK3QcyAoPIx/JFXmlrCJwOO1Tjni0i52q75 NkFA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KpxAKAEN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id h23si15658382ejq.206.2020.04.18.07.16.41; Sat, 18 Apr 2020 07:17:03 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=KpxAKAEN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728187AbgDRONs (ORCPT + 99 others); Sat, 18 Apr 2020 10:13:48 -0400 Received: from mail.kernel.org ([198.145.29.99]:37016 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726480AbgDROJc (ORCPT ); Sat, 18 Apr 2020 10:09:32 -0400 Received: from sasha-vm.mshome.net (c-73-47-72-35.hsd1.nh.comcast.net [73.47.72.35]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id B134D22253; Sat, 18 Apr 2020 14:09:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587218972; bh=jLQjo7sVMrW78vbiNqRpHkEm3YVGC3+qwmWujhDT2RA=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=KpxAKAEN9fL7v5tFo5X2Sf/fz43pbPddr5TLu+/x2gI7d23BPhrWq5MVjPf9VqUCa 04cjtwjtU2QeAkG8V9JDiDRF3F7q6o5GGMwWupcZA6/uu7vbn0Dw5AswNYmly4aTRK Dd9D3zfX6Kk1a1p+l0YwpI2pyZAmGEWmrHaTEVEE= From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Wu Bo , Lee Duncan , "Martin K . Petersen" , Sasha Levin , open-iscsi@googlegroups.com, linux-scsi@vger.kernel.org Subject: [PATCH AUTOSEL 5.5 18/75] scsi: iscsi: Report unbind session event when the target has been removed Date: Sat, 18 Apr 2020 10:08:13 -0400 Message-Id: <20200418140910.8280-18-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200418140910.8280-1-sashal@kernel.org> References: <20200418140910.8280-1-sashal@kernel.org> MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Wu Bo [ Upstream commit 13e60d3ba287d96eeaf1deaadba51f71578119a3 ] If the daemon is restarted or crashes while logging out of a session, the unbind session event sent by the kernel is not processed and is lost. When the daemon starts again, the session can't be unbound because the daemon is waiting for the event message. However, the kernel has already logged out and the event will not be resent. When iscsid restart is complete, logout session reports error: Logging out of session [sid: 6, target: iqn.xxxxx, portal: xx.xx.xx.xx,3260] iscsiadm: Could not logout of [sid: 6, target: iscsiadm -m node iqn.xxxxx, portal: xx.xx.xx.xx,3260]. iscsiadm: initiator reported error (9 - internal error) iscsiadm: Could not logout of all requested sessions Make sure the unbind event is emitted. [mkp: commit desc and applied by hand since patch was mangled] Link: https://lore.kernel.org/r/4eab1771-2cb3-8e79-b31c-923652340e99@huawei.com Reviewed-by: Lee Duncan Signed-off-by: Wu Bo Signed-off-by: Martin K. Petersen Signed-off-by: Sasha Levin --- drivers/scsi/scsi_transport_iscsi.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c index 271afea654e2b..a5c78b38d3022 100644 --- a/drivers/scsi/scsi_transport_iscsi.c +++ b/drivers/scsi/scsi_transport_iscsi.c @@ -2012,7 +2012,7 @@ static void __iscsi_unbind_session(struct work_struct *work) if (session->target_id == ISCSI_MAX_TARGET) { spin_unlock_irqrestore(&session->lock, flags); mutex_unlock(&ihost->mutex); - return; + goto unbind_session_exit; } target_id = session->target_id; @@ -2024,6 +2024,8 @@ static void __iscsi_unbind_session(struct work_struct *work) ida_simple_remove(&iscsi_sess_ida, target_id); scsi_remove_target(&session->dev); + +unbind_session_exit: iscsi_session_event(session, ISCSI_KEVENT_UNBIND_SESSION); ISCSI_DBG_TRANS_SESSION(session, "Completed target removal\n"); } -- 2.20.1