Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3041523imu; Mon, 19 Nov 2018 09:44:56 -0800 (PST) X-Google-Smtp-Source: AJdET5eUgVHiWjx10SQGfHQiexCbWX7umjjuN4cyN7NRIbfZvIYijr2FBJPz2vzaqSdNBktSyVyg X-Received: by 2002:a63:1444:: with SMTP id 4mr21217111pgu.430.1542649496424; Mon, 19 Nov 2018 09:44:56 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1542649496; cv=none; d=google.com; s=arc-20160816; b=oGEFkTEybHIKH+8r6TG7mlYUy9ZbEOX9vfUC5Lmgt1+myktQQQkg4FWsR1Ud21n4Vx JgYZ5+tRNMvBISAo1iNtbf42+kKQOwHgrhBaPukHiWcQryrrjA9KUwt+xqrMsqZ0Znno AgMpoZzdOXuCbmY4LLooNdCH5g5h5uw20UFIpHy78E56a4/hB4vKG9P3mLOcWoJw7btM 23cWLJcYvTcEeCiJTs/gAusmyviXs03wMallC45pnS3bZczPFpgeYGlIN4xaxnWtmZNA dTpIiimEUodQiEt5dyu7zmrnRjYKVNTlxz6evh/c2O4lJ6u3zDSVpJY1n1HBzRMdyC04 NMnw== 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 :user-agent:references:in-reply-to:message-id:date:subject:cc:to :from:dkim-signature; bh=t0J2DxWMNZBdxZSz02YeAm4d+3LkYD3teg5S/cvONAQ=; b=EuvPIprkrJvOZW48LXh8YidF+NNKQW8Jljr93Vv/CHojIfvRjzTUxifSuRW6U194eI s+reEphXlYIGDyZwIDIDvOv8afAAJg5VNPzWbXxGSHQ/u5MUqktSGspkQ+3BEWX2Mzsh AEqG9PLwVOlapC0Lr08bJVbldozNhl6IOFkVF/klGm278syIKHj75EMEJb8LpJ1d2+3d 9UwCCo1afa0FURgaez3QhJ38QbOnsPL4XutJMCLAWXuvRFU2NaZONMpxgfcnPx7L5Apg Qdx1tifa9ACDNsFcdnhwJaUAo5r6Tu1mJ8Ab1V2YMFlziRjSLiBu0E8NLmleFBT1ANXr gzXA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=th10CNBg; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z86si28006483pfl.209.2018.11.19.09.44.41; Mon, 19 Nov 2018 09:44:56 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=default header.b=th10CNBg; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S2389289AbeKTDMP (ORCPT + 99 others); Mon, 19 Nov 2018 22:12:15 -0500 Received: from mail.kernel.org ([198.145.29.99]:48404 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S2388196AbeKTDMP (ORCPT ); Mon, 19 Nov 2018 22:12:15 -0500 Received: from localhost (5356596B.cm-6-7b.dynamic.ziggo.nl [83.86.89.107]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPSA id 48BC9206BA; Mon, 19 Nov 2018 16:48:02 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1542646082; bh=/IRvNVH4burCYBSbOqj4D2+wAyRp+CWg+At4YcjgGbs=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=th10CNBggJptsWmb2XcVLHlmsc9F06Xf0JqOzHo8b6ATuQiQo3w2iPnRbBhBrSAVH fTuOYbCcsSrccKyYpTopSGHvDCm+m7+7CQzng0ij6KzAe9z22Rvcss2aWEFGsYsL1t KX7hZZf8oBjxGYgiH2vbAG/GP/vM0gCTDRaG0kn0= From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, "Ewan D. Milne" , Himanshu Madhani , "Martin K. Petersen" Subject: [PATCH 4.14 029/124] scsi: qla2xxx: Fix re-using LoopID when handle is in use Date: Mon, 19 Nov 2018 17:28:03 +0100 Message-Id: <20181119162619.241071826@linuxfoundation.org> X-Mailer: git-send-email 2.19.1 In-Reply-To: <20181119162612.951907286@linuxfoundation.org> References: <20181119162612.951907286@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.14-stable review patch. If anyone has any objections, please let me know. ------------------ From: Quinn Tran commit 5c6400536481d9ef44ef94e7bf2c7b8e81534db7 upstream. This patch fixes issue where driver clears NPort ID map instead of marking handle in use. Once driver clears NPort ID from the database, it can reuse the same NPort ID resulting in a PLOGI failure. [mkp: fixed Himanshu's SoB] Fixes: a084fd68e1d2 ("scsi: qla2xxx: Fix re-login for Nport Handle in use") Cc: Signed-of-by: Quinn Tran Reviewed-by: Ewan D. Milne Signed-off-by: Himanshu Madhani Signed-off-by: Martin K. Petersen Signed-off-by: Greg Kroah-Hartman --- drivers/scsi/qla2xxx/qla_init.c | 18 ++++-------------- drivers/scsi/qla2xxx/qla_target.c | 3 ++- 2 files changed, 6 insertions(+), 15 deletions(-) --- a/drivers/scsi/qla2xxx/qla_init.c +++ b/drivers/scsi/qla2xxx/qla_init.c @@ -1511,25 +1511,15 @@ qla24xx_handle_plogi_done_event(struct s cid.b.rsvd_1 = 0; ql_dbg(ql_dbg_disc, vha, 0x20ec, - "%s %d %8phC LoopID 0x%x in use post gnl\n", + "%s %d %8phC lid %#x in use with pid %06x post gnl\n", __func__, __LINE__, ea->fcport->port_name, - ea->fcport->loop_id); + ea->fcport->loop_id, cid.b24); - if (IS_SW_RESV_ADDR(cid)) { - set_bit(ea->fcport->loop_id, vha->hw->loop_id_map); - ea->fcport->loop_id = FC_NO_LOOP_ID; - } else { - qla2x00_clear_loop_id(ea->fcport); - } + set_bit(ea->fcport->loop_id, vha->hw->loop_id_map); + ea->fcport->loop_id = FC_NO_LOOP_ID; qla24xx_post_gnl_work(vha, ea->fcport); break; case MBS_PORT_ID_USED: - ql_dbg(ql_dbg_disc, vha, 0x20ed, - "%s %d %8phC NPortId %02x%02x%02x inuse post gidpn\n", - __func__, __LINE__, ea->fcport->port_name, - ea->fcport->d_id.b.domain, ea->fcport->d_id.b.area, - ea->fcport->d_id.b.al_pa); - lid = ea->iop[1] & 0xffff; qlt_find_sess_invalidate_other(vha, wwn_to_u64(ea->fcport->port_name), --- a/drivers/scsi/qla2xxx/qla_target.c +++ b/drivers/scsi/qla2xxx/qla_target.c @@ -1203,7 +1203,8 @@ void qlt_schedule_sess_for_deletion(stru qla24xx_chk_fcp_state(sess); ql_dbg(ql_dbg_tgt, sess->vha, 0xe001, - "Scheduling sess %p for deletion\n", sess); + "Scheduling sess %p for deletion %8phC\n", + sess, sess->port_name); INIT_WORK(&sess->del_work, qla24xx_delete_sess_fn); queue_work(sess->vha->hw->wq, &sess->del_work);