Received: by 2002:a25:1985:0:0:0:0:0 with SMTP id 127csp1752696ybz; Sat, 18 Apr 2020 07:47:04 -0700 (PDT) X-Google-Smtp-Source: APiQypLW9SRi9ld5jxR5VB4aS+5dP1O2qhWVXewtApQLvbbJ+GAQ6A4wduBrIasrR0COFEuDq/Ng X-Received: by 2002:a17:907:40ec:: with SMTP id nn20mr7649913ejb.294.1587221224300; Sat, 18 Apr 2020 07:47:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1587221224; cv=none; d=google.com; s=arc-20160816; b=DXQV6L53UrRc+Bsq/GkCe9S2R6FbORrO0aLqr27apgLmktCqaEVMHAmsbCsQo2jaj9 BWPRv0K4KXlR5jF7BJmeiTbkbj3go8tjwA2i/5Vafiy5xeNn4CR5StgVCgzLXCFBm6tS QUaHm+sojV+ArobFNHSKLaGha0o1Rd2oR2xkuXDvSeOhL2mH5xzzI0I1EiNKGDLMHyiq OW346M5qDKWCO+0brGDwUmYLfUKKCYdJawdBT6ckJzmyOpQtQrtQsugiZGtwikR23jxz z0zum+144yLndehzzbNf59u10ghUIFIs7bZbRRwUUhQHSKYaEXhmKF4Lpd3giXzwey4L NLIw== 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=vLPJmvPeJ+fGm6V7N2ZmKwvGCmN+aVyQb9WEuxTUG+M=; b=zOOyUDTP0VXJGQm2rdtzkBhfQMH8EcvCoeAsRZmpbT3Bi11S04TEkmYzVWFzpOliIS XXl+89sFgaMFiSxiBtAlBvKsZjLQ2xFUpWQ6Cv+erR5CtoWjzAGZIdTmzVpXr585uZmH AqcfpOU637i0wc8uNp/KlopiLdDxk6RIXjWd0haxaRHjyTa8Kc7w7yJBQcxUjOc6bH1S WMCiWjnGem3gBNgeabJgbZ9LtlG0T6Vi5ypQneD39CJRxsaIzyiYN8hJZ3M3rnReKU4/ 4nucECQ4L10WeMbywJ6vUPR6aTm7ZedPAgE7aT1aCzGMw4pwt62/UEXLF7MHpLoq0VUk lfJw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=GXTYdjFw; 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 k5si16129448ejk.345.2020.04.18.07.46.41; Sat, 18 Apr 2020 07:47:04 -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=GXTYdjFw; 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 S1728422AbgDROmq (ORCPT + 99 others); Sat, 18 Apr 2020 10:42:46 -0400 Received: from mail.kernel.org ([198.145.29.99]:52958 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1728397AbgDROmm (ORCPT ); Sat, 18 Apr 2020 10:42:42 -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 39B4922262; Sat, 18 Apr 2020 14:42:40 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1587220961; bh=/yBA27/kqdiy37hk84WYeY9GxI6HtW+l5MdCsPRFJ34=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=GXTYdjFwTyBGkrhDfy51XgW7A+/p4vDq8g2ds3IQMf6aVzccMFEkO76VDPswTG24T AL867xS88JCjuwPVsyrDLxpbBbkI93NYw8mzu/yZT3WeSQd6s67YRu8LpkO75LvVdl 2YVDFAtXA6YXgjpJHT4tK30fi+1pyaCB7N5dPj5c= 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 4.19 11/47] scsi: iscsi: Report unbind session event when the target has been removed Date: Sat, 18 Apr 2020 10:41:51 -0400 Message-Id: <20200418144227.9802-11-sashal@kernel.org> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20200418144227.9802-1-sashal@kernel.org> References: <20200418144227.9802-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 c0fb9e7890807..04d095488c764 100644 --- a/drivers/scsi/scsi_transport_iscsi.c +++ b/drivers/scsi/scsi_transport_iscsi.c @@ -2010,7 +2010,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; @@ -2022,6 +2022,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