From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from verein.lst.de (verein.lst.de [213.95.11.211]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 22BB0403B0F for ; Wed, 10 Jun 2026 12:05:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=213.95.11.211 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781093103; cv=none; b=VhGdnSY0ER2jLDAaaD/zxy+Bjc4kTNyXXyxtj8AJF/2L2BksF73qhIJH/XXiv/CWYKyY1J0zRoTbZBeb5Snv8g43GxYVVRL0BiyIiviDcjZnfHjEo9li6P3h0Ocghhn96MS0qXZpQkri4Vzdf4Mu8XariLESd0fHavnlo9SP+iM= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1781093103; c=relaxed/simple; bh=qEiVp4tow8/lOPGlYWR11lw7iRHDdNFdgnNyBOoKPAI=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=laLXrNq6p5WvcEYMY1lrZJ9POq6aOK0+/NMwsKfehSMpHObdipgtTWITCjJIE62eJVobRx8jf7115aYoG1ozi0/4J+61ROpnoc/zvTrWRw7ti45OvWZvBSZ6kec428MScW5UIFH5uiNV5a+mF4rvwkcVvOlZbZVDld2YQOFBLQU= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lst.de; spf=pass smtp.mailfrom=lst.de; arc=none smtp.client-ip=213.95.11.211 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=lst.de Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=lst.de Received: by verein.lst.de (Postfix, from userid 2407) id 85EDA68C4E; Wed, 10 Jun 2026 14:04:58 +0200 (CEST) Date: Wed, 10 Jun 2026 14:04:58 +0200 From: Christoph Hellwig To: Surabhi Gogte Cc: kbusch@kernel.org, axboe@kernel.dk, hch@lst.de, sagi@grimberg.me, linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org, mkhalfella@purestorage.com, randyj@purestorage.com Subject: Re: [PATCH v2] nvme-rdma: parallelize I/O queue allocation and startup Message-ID: <20260610120458.GD19624@lst.de> References: <20260604195321.2232838-1-sgogte@purestorage.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260604195321.2232838-1-sgogte@purestorage.com> User-Agent: Mutt/1.5.17 (2007-11-01) On Thu, Jun 04, 2026 at 01:53:21PM -0600, Surabhi Gogte wrote: > +static void nvme_rdma_setup_queue_async(void *setup_queue, async_cookie_t cookie) Overly long line. Easily fixed by renaming setup_queue to data as in the async_schedule_domain prototype. > +static int nvme_rdma_setup_io_queues(struct nvme_rdma_ctrl *ctrl, int first, > + int last, size_t queue_size) should first and last be unsigned? Also please use two-tab indents for prototype continuations. > + async_synchronize_full_domain(&setup_queue_domain); > > -out_free_queues: > - for (i--; i >= 1; i--) > - nvme_rdma_free_queue(&ctrl->queues[i]); > + ret = atomic_read(&ctrl->qsetup_err); > + if (ret) { Jump to an error label if there was an error to reduce indentation a bit below. > + ctrl->queues[0].ctrl = ctrl; > + ctrl->queues[0].queue_size = NVME_AQ_DEPTH; > + error = nvme_rdma_alloc_queue(&ctrl->queues[0]); The nvme_rdma_alloc_queue prototype change would be a nice prep patch to split out from the main change.