Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp1002496pxv; Fri, 25 Jun 2021 03:19:01 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxJN/TSCRF1JnmKOhyFS0xhLkUvIhpx1jveTogMInmSFj0sYBpqDTJT87m9X1TS/mOD7LfN X-Received: by 2002:a05:6402:1914:: with SMTP id e20mr13570949edz.310.1624616341329; Fri, 25 Jun 2021 03:19:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1624616341; cv=none; d=google.com; s=arc-20160816; b=cCvfjEwJ+ywfJmEN3pNDR6PSE6f46nCad/M0vjW+NC/if8e7++TRnsO7pKTVkCYlMh lBJUyyPyJv8lF8ikdhFR+aL6kweHEsecuJDbY1sfZ8Sbg2BNCygTgjvDalpvP0WaX2mz ZWlv6G64cO6QKsUl7LQfs8C5dMXHOdi86gdCm1Q5hxBFkz7bgvK7FACewZybJrEXj/oE SYQbr751L2g4mn7D6At9UYutSEPdxL02fxOuc0f7BNxyBpTH0qkZHCyPreyYbvpqoBrz rtlYKjVby3RmGDMq5zQB0ox9Dt34NIE4PZFyvTKs6B9sGz8Ghezun3IhL3HS12cuK6jB TwzA== 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=IQ89tcxZO7rZVXsy6SFwDm6T3LsZgyoHJ54oSSNnoDg=; b=mkpdpoifuE+maNQpKd9004YYxpt3ao9DHifZ2OGVAe0IUvrBpid22UiPWicmR9rQj3 +G8PUjA1Jr2mQwSqpLklZLBvMnMyGgOyu6NCKgY7oEzzC9vqbr2QRKbTu1lMyN9b6zc5 rKD9vl80XRQ9cpXnkyjLWIuwTfhhlKZXOVMPsv8151pzK1RG+Fwww0q+F6uuXIyQSBa7 1sZjcugQ3oN1jtgJPr139XtAsyvyBNOtNOi9d5j912pujF1Bns//RnxtGcmWJiEBUJ0H v/1WTdFBbq5HQNU8ezCuFrE4M8sXVuOw+xyumLC6bItyL2+WDjr4TxMkHmgQX9eACScH TMsA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b=Pb3Y0iOd; dkim=neutral (no key) header.i=@suse.de; 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 p16si5947071edq.404.2021.06.25.03.18.36; Fri, 25 Jun 2021 03:19:01 -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=Pb3Y0iOd; dkim=neutral (no key) header.i=@suse.de; 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 S231440AbhFYKTj (ORCPT + 99 others); Fri, 25 Jun 2021 06:19:39 -0400 Received: from smtp-out2.suse.de ([195.135.220.29]:53298 "EHLO smtp-out2.suse.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230461AbhFYKTU (ORCPT ); Fri, 25 Jun 2021 06:19:20 -0400 Received: from relay2.suse.de (relay2.suse.de [149.44.160.134]) by smtp-out2.suse.de (Postfix) with ESMTP id 6F7991FE7D; Fri, 25 Jun 2021 10:16:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1624616218; 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=IQ89tcxZO7rZVXsy6SFwDm6T3LsZgyoHJ54oSSNnoDg=; b=Pb3Y0iOdj8VpuVvs9RVbZROshfLTc7WmtEp2g93gLvtkmyXBWd+cvM7FP49FbkRFiVuTjP hw400argVAXGvBjFIxRLo3YXrGDJLWpbhi6PAUrk1RYdeK0MbM+WmfEjQ9L+Za9YYBXWda CG72rFTxeRLlY4LZECWNema0sbZYFzU= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1624616218; 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=IQ89tcxZO7rZVXsy6SFwDm6T3LsZgyoHJ54oSSNnoDg=; b=oEF70zYFvCcpMVK5b6B+freJJyVr3Q6HPsROsHE97vf0R9GuRk25pIeyINm20wH8ZVr7iX VQ+aym0fi+MTK8DA== Received: from adalid.arch.suse.de (adalid.arch.suse.de [10.161.8.13]) by relay2.suse.de (Postfix) with ESMTP id 96648A3BF0; Fri, 25 Jun 2021 10:16:57 +0000 (UTC) Received: by adalid.arch.suse.de (Postfix, from userid 17828) id 860EB51709BD; Fri, 25 Jun 2021 12:16:57 +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 Subject: [PATCH 1/2] nvme-fc: Update hardware queues before using them Date: Fri, 25 Jun 2021 12:16:48 +0200 Message-Id: <20210625101649.49296-2-dwagner@suse.de> X-Mailer: git-send-email 2.29.2 In-Reply-To: <20210625101649.49296-1-dwagner@suse.de> References: <20210625101649.49296-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. 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 8a3c4814d21b..a9645cd89eca 100644 --- a/drivers/nvme/host/fc.c +++ b/drivers/nvme/host/fc.c @@ -2951,14 +2951,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", @@ -2968,6 +2960,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