Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp286541pxv; Thu, 8 Jul 2021 02:32:17 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwIH2o+24FJMdKJKZ5BtF02Up+6BV9YZe49rL5PCy9CwToL6aNOvLIreOOKB4wcBsOGRdvx X-Received: by 2002:a17:907:72ce:: with SMTP id du14mr29837922ejc.529.1625736737406; Thu, 08 Jul 2021 02:32:17 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625736737; cv=none; d=google.com; s=arc-20160816; b=QMX/GuLd+S6qArcoW93cYlnhZ+YYn0ASfsZTQMKyxcXEPkocQE3yGHGAZ3HAiaAUGr ba5NUepijUgstu/pdy6tGyvpkYKAkwpHPbHHEB7Em5rb/lAiEP2GP+bZTo8HA6ECofvI Gh5NRmN29qexDNYrusIUZ5blmqqFAmH5B5FSwsjUGJ9i8aY/YBDN+Z17IF4L62tjBCFI Hq2Zy92MncpnAyGnHN/LzEl6PFeDI9vwUJyxw+xGXIT2dNJAlNnIaBmq2w3jzzvNI9LY TrQHmJNZDFjDHna3mkGjzryLENFLpT1lGye8g5IDxKmqxTE1h+A28GCM24KUaeQXNHBz ajVQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature:dkim-signature; bh=/f9VSasZoGf03Wu2Afc2ARJqczEWvsJANa4KYMeyfBo=; b=sp9MvU0G++GUGS2CEhGCrys6G1kWvgwXg8nIEPEuLE0xl9Dd42EcdNKxCJdX2rKFzT XWYGwMHD/RtjnSX6+eWuF+P8C7etXA75GENSjFEn90+jz3U9UYjqfQ1uNvqec+Neti1r yxv2PjaX+ADyL7Kj9/rMK9iwHSj0Ss9Q6lTXRX24h1Vz498qwkSrxe0ZWBtLicTrkXXD krVxnconHpd5MoGcU6WJuFsORN+sG1/WuLSDwpEUHTRQ2eStSzCoFi2MTM1UUnLPhi3m ynNQDt4kS1wz8P2Ds7k33Zy/Her+I0dMh0JG4CAHi6fIXPS19n6TTsGhE2DFakFlVSPL DEYA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=GAPyZ8Rk; dkim=neutral (no key) header.i=@suse.de header.b=0hbboPqL; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id 3si2114573ejm.82.2021.07.08.02.31.54; Thu, 08 Jul 2021 02:32:17 -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=@suse.de header.s=susede2_rsa header.b=GAPyZ8Rk; dkim=neutral (no key) header.i=@suse.de header.b=0hbboPqL; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231405AbhGHJa4 (ORCPT + 99 others); Thu, 8 Jul 2021 05:30:56 -0400 Received: from smtp-out2.suse.de ([195.135.220.29]:60750 "EHLO smtp-out2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231312AbhGHJav (ORCPT ); Thu, 8 Jul 2021 05:30:51 -0400 Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out2.suse.de (Postfix) with ESMTP id 6E9EA20192; Thu, 8 Jul 2021 09:28:08 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1625736488; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/f9VSasZoGf03Wu2Afc2ARJqczEWvsJANa4KYMeyfBo=; b=GAPyZ8RkCuYOgLJrqazG4A8+XcwgMkqjMeopG++C9IN3g5At4tbExVT0MZB8/j7pfQreoE dnmJU0TYdVXyPqJaSRfO7mdGutckXlR4q+HGRhX6TTFnHa9SfkR9FZvT/zG9NdXlu7mDyz 4SFgYZwnpyCyg3ZWZUZGQyvsD1lpBnM= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1625736488; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=/f9VSasZoGf03Wu2Afc2ARJqczEWvsJANa4KYMeyfBo=; b=0hbboPqLMQ1ICG+eDgSVplGf6Lwec883APllCHhBGqyfjUw+tfesKyic3ebb8zGVHrJdtW NYXIB6/bXaWVNfBw== Received: from adalid.arch.suse.de (adalid.arch.suse.de [10.161.8.13]) by relay2.suse.de (Postfix) with ESMTP id 64BD4A3B85; Thu, 8 Jul 2021 09:28:08 +0000 (UTC) Received: by adalid.arch.suse.de (Postfix, from userid 17828) id 57809517114C; Thu, 8 Jul 2021 11:28:08 +0200 (CEST) From: Daniel Wagner To: linux-nvme@lists.infradead.org Cc: linux-kernel@vger.kernel.org, James Smart , Keith Busch , Jens Axboe , Ming Lei , Sagi Grimberg , Daniel Wagner , James Smart Subject: [PATCH v2 1/5] nvme-fc: Update hardware queues before using them Date: Thu, 8 Jul 2021 11:27:51 +0200 Message-Id: <20210708092755.15660-2-dwagner@suse.de> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210708092755.15660-1-dwagner@suse.de> References: <20210708092755.15660-1-dwagner@suse.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org In case the number of hardware queues changes, do the update the tagset and ctx to hctx first before using the mapping to recreate and connnect the IO queues. Reviewed-by: James Smart Reviewed-by: Ming Lei Signed-off-by: Daniel Wagner --- drivers/nvme/host/fc.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/drivers/nvme/host/fc.c b/drivers/nvme/host/fc.c index c087cf7a6e1f..d0eb81387d4e 100644 --- a/drivers/nvme/host/fc.c +++ b/drivers/nvme/host/fc.c @@ -2952,14 +2952,6 @@ nvme_fc_recreate_io_queues(struct nvme_fc_ctrl *ctrl) if (ctrl->ctrl.queue_count == 1) return 0; - ret = nvme_fc_create_hw_io_queues(ctrl, ctrl->ctrl.sqsize + 1); - if (ret) - goto out_free_io_queues; - - ret = nvme_fc_connect_io_queues(ctrl, ctrl->ctrl.sqsize + 1); - if (ret) - goto out_delete_hw_queues; - if (prior_ioq_cnt != nr_io_queues) { dev_info(ctrl->ctrl.device, "reconnect: revising io queue count from %d to %d\n", @@ -2969,6 +2961,14 @@ nvme_fc_recreate_io_queues(struct nvme_fc_ctrl *ctrl) nvme_unfreeze(&ctrl->ctrl); } + ret = nvme_fc_create_hw_io_queues(ctrl, ctrl->ctrl.sqsize + 1); + if (ret) + goto out_free_io_queues; + + ret = nvme_fc_connect_io_queues(ctrl, ctrl->ctrl.sqsize + 1); + if (ret) + goto out_delete_hw_queues; + return 0; out_delete_hw_queues: -- 2.29.2