From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-ot1-f99.google.com (mail-ot1-f99.google.com [209.85.210.99]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id C32AD3939B0 for ; Mon, 24 Aug 2026 22:29:52 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.99 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787610594; cv=none; b=IBTi3iFJpX3+EHGKqZPqd0HWqeXRdy5G2c1Dssb2KvzobKhFp/G42xb4i4zL1p1FRLLr0DhbgQcn4qBkC9L4BkEBMqoMcLarKr03zU6BzQkXlMu+GudaIr964faEeQiyBhgf0gZrMctUIo2YrnPwwbFxP9hdu3ReubWdsWOIPRw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1787610594; c=relaxed/simple; bh=cddTogDnlOeMAvpYhUjPyKWy0zU9Up3QR/13T737H/Q=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=suqA5HVf19a476MQ7D+uZDbzzhyx/t7XMywVZKETVGSx32uyXumT4s2TbnrS8BlX+9dv0nAc8P9f081AEy1d60gNeNF5OyfdmSCXQzSXpyKd/vvpsI3pQpgaKvLqRPwl/UW2+mz8onqKGSXWa1OblZ2Zf/yDgrQ2HyQLJPJX7Ec= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=purestorage.com; spf=pass smtp.mailfrom=purestorage.com; dkim=pass (2048-bit key) header.d=purestorage.com header.i=@purestorage.com header.b=NVClaLUz; arc=none smtp.client-ip=209.85.210.99 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=purestorage.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=purestorage.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=purestorage.com header.i=@purestorage.com header.b="NVClaLUz" Received: by mail-ot1-f99.google.com with SMTP id 46e09a7af769-7ec58fa3e01so2961799a34.1 for ; Mon, 24 Aug 2026 15:29:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=purestorage.com; s=google2022; t=1787610591; x=1788215391; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to:content-type; bh=FXqUmYfP/1VeF9LNUTb+thDcnPb5yvMtvt49VD63p88=; b=NVClaLUzG178ccqLxqTZKBwtTIAH37keAVOjmXjFUsL+O+PA7lxN6T9TVy2jXC0XPn G9RT16NSQoydi9dokLgTKeojUU2CuGr8E39mz2MeGmMgTGTQpzWzXJ5Zrs7M6QsXeJuU wwIa2VhEdwq+EBgLoTcUYLnb3XxxJoU2GiB1ucpXbiH6GmaHjKs+7RiRPGbhhMAvm0FA yJOsMcygQNXuH+rFw/3yA1xP9aGeKaBhS6BLcdsAvxy9rmbffb25eyY5gtH6AltpEti/ RuFWfb7JIX6Kx/RujRm1KljK7/lhrsrSorHMxya7T1u6ZV0YwOaJNN6XTik8vHHaeB2i rhaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1787610591; x=1788215391; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=FXqUmYfP/1VeF9LNUTb+thDcnPb5yvMtvt49VD63p88=; b=Bn72oxwK12YCJtC6jBA7/ahtI5xUILs3gaKR8M/2F9iOpM5QtKlONPM1ziGABbl1oO VukIJ3YpHspBxDTTBOKRK6zwAIh74P86lEhJawqOra+4LCVjHGmpqM5uRszit4QEPL2S v1ebjk8Lk5O8GqOaeiHpzWMaz9u80oitRW6TLhTKbgHyxI7WdntZ+6Sl4p+mHDZ2vPkP z4t3uf9imgC/+y1wrC6otqzMmsEn1STdmTV1kRoQHQB3xXf11QGfUOnPGZ8QmTwnXV5H nCl8FF51zZnKg5Dhz30ht7UyiysenIkPNwOxwzJyxxdwbPdCe4qgQTZ1BmaZvYI05Oh/ 2gOg== X-Forwarded-Encrypted: i=1; AHgh+RojMKb4tm42sYMhZEZ+yKeoZTcGBKJs9NA43lVLywpgwImBlHfCg/fyHcaunzMzLv5UoOHk2nflew26zwY=@vger.kernel.org X-Gm-Message-State: AFuF++lYhXhj5zqUaA6uSdIkG8cBqvW0hMxzxSS5hzQlqewKETYY/1rP NCCDfOcfejIsbvDn+d3ndTbKMj+4e4PiKkv4lF3lECy+TYHcPN7XLqOHlBRrwQwBhuP6pRu1MMO cEWvcL6L4eXfjWHu74sLuKCACWzRsnYS5bxnw X-Gm-Gg: AR+sD11L4CNSZ3N0JoNRpCjP8MlcHktiZVxDoiAuXgVKwx1wYu70f3OaWxNgebWoUTM PNcCyN+EZx1STTYrzuoR5CwLXKefNG8mt3UhwdTzODxDN2+wrQgwHzZRVJXGrC4cFU2bw4zREJY +Wqqbf4Mh0hZV7d9PYQeBJzd6Z7NReHOQ/wLI7Lt85eFUPqYwKCvW3dUg8vtiaOziqb9SpOuo/7 JvNel3FSFf1bzbnzWfKGmMyf7/N8+VzIgdPdOjDCPZ66ep4gbUjXh2q9tGaEDG6hfTmMQ0H1jEd fmrmH7ZdSZuS2v1Q01SnZtCtuRl9ok5WLFRdAZczb4Vl2DWF2B+DNWpeSmpvWoJLO/K03PtgTO0 GwKoNMsgojgejMnLiFkOWAZXcSaV0S6s= X-Received: by 2002:a05:6830:6111:b0:7e6:e162:915 with SMTP id 46e09a7af769-7f4af75f1dcmr2252155a34.5.1787610591507; Mon, 24 Aug 2026 15:29:51 -0700 (PDT) Received: from c7-smtp-2026.dev.purestorage.com ([208.88.159.128]) by smtp-relay.gmail.com with ESMTPS id 46e09a7af769-7f48fc4ba4bsm827273a34.6.2026.08.24.15.29.51 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 Aug 2026 15:29:51 -0700 (PDT) X-Relaying-Domain: purestorage.com Received: from dev-sgogte.dev.purestorage.com (dev-sgogte.dev.purestorage.com [10.112.19.91]) by c7-smtp-2026.dev.purestorage.com (Postfix) with ESMTP id 139BE402B2; Mon, 24 Aug 2026 16:29:51 -0600 (MDT) Received: by dev-sgogte.dev.purestorage.com (Postfix, from userid 1557734945) id 0E12651D15; Mon, 24 Aug 2026 16:29:51 -0600 (MDT) From: Surabhi Gogte To: Keith Busch , Jens Axboe , Christoph Hellwig , Sagi Grimberg Cc: linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org, mkhalfella@purestorage.com, randyj@purestorage.com, adailey@purestorage.com, Surabhi Gogte Subject: [PATCH 0/2] nvme-tcp: parallelize I/O queue connect Date: Mon, 24 Aug 2026 16:29:37 -0600 Message-ID: <20260824222939.301887-1-sgogte@purestorage.com> X-Mailer: git-send-email 2.55.0 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Similar to commit 2a8513091d2f ("nvme-rdma: parallelize I/O queue allocation and startup"), I/O queue allocation and start steps (including authentication) can be parallelized for nvme-tcp as well. Patch 1 is a preparatory refactor: it splits the queue-count negotiation and TLS PSK checks into helpers so that the individual steps can be called directly from nvme_tcp_configure_io_queues(). No functional change. Patch 2 has the async implementation: it fans the per-queue alloc and start out over an async domain, serializes the per-cpu queue-count in nvme_tcp_set_queue_io_cpu() that can now run concurrently, and switches sock_create_kern() to init_net. Testing on a 64-core host with 64 IO-queues shows nvme-tcp connection time reduced from 61ms to 11ms. Surabhi Gogte (2): nvme-tcp: refactor I/O queue setup path nvme-tcp: parallelize I/O queue allocation and startup drivers/nvme/host/tcp.c | 143 +++++++++++++++++++++++++++------------- 1 file changed, 96 insertions(+), 47 deletions(-) -- 2.55.0