From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mo4-p01-ob.smtp.rzone.de (mo4-p01-ob.smtp.rzone.de [85.215.255.54]) (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 51F9B1A681B for ; Sun, 3 May 2026 20:03:09 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=pass smtp.client-ip=85.215.255.54 ARC-Seal:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777838592; cv=pass; b=V2/jBu84NGlRF18ZOaCupHjyI/v90dJ4UtViE55RoFjid3a3xxEJICeqe/PL0BtQtPQGbmPqzx1TX8rsTwiO5V3gPZKovDix39CYqvjd+eHo4x/5P8aBybB7sCGS8l5W/9kfMJFtMJpMXpz1VkYclNrJWloVZrjwgGSgNJ95TQs= ARC-Message-Signature:i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1777838592; c=relaxed/simple; bh=MJRIjsmo3b5clebtHfhblXYkxSCnwjGCs8KkWuqVUGw=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version:Content-Type; b=MUBBDnTMyIPaQVRg5IS2FJSqOAt9uNZ3HzFmq1744Y68Eww34cJ6TXVmngOIqIWVMRzhgnDZOIUefoJKS8+gVprlEsmejEsKmV7URJwAT17xYuCBU36d6mSh6RGGQZdgqPB+l9V2RtBpd4yYKYjlMMevZ9bLxBBOrLOc+Fl0GSk= ARC-Authentication-Results:i=2; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=iokpp.de; spf=none smtp.mailfrom=iokpp.de; dkim=pass (2048-bit key) header.d=iokpp.de header.i=@iokpp.de header.b=nGg20asY; dkim=permerror (0-bit key) header.d=iokpp.de header.i=@iokpp.de header.b=ONtYeu8L; arc=pass smtp.client-ip=85.215.255.54 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=iokpp.de Authentication-Results: smtp.subspace.kernel.org; spf=none smtp.mailfrom=iokpp.de Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=iokpp.de header.i=@iokpp.de header.b="nGg20asY"; dkim=permerror (0-bit key) header.d=iokpp.de header.i=@iokpp.de header.b="ONtYeu8L" ARC-Seal: i=1; a=rsa-sha256; t=1777838581; cv=none; d=strato.com; s=strato-dkim-0002; b=GxGxr9OhVOb/5NWs4nGOD3+qy3bRaE9+X7htV7HkvxTRAaxyiQuOdpzAsYJ2NNqVDu vukRn0czcY7avjMqYPGlYRtPv2mxOtar1ZMu2a4+oHoiT1+qL9Nin712YeKZpvFGGdjP bpjJrrxkwUiHIeeRCAS2I+EJUhXAwZUD5iY1/ozzp7GQT6BYK3vh52sMsiwAwHSVBWzI d/WSpld2pMydBBh4g7URj/UikZUEjDxHswceudZbKrvCPW7fTEmz/y7+7cAUvyBo3efx GKXOAV1U/mwUNp0eAOZdAtIx6Zd7b8hCaWWUEJmJb1QNQ6hGXve1bJQORiWy6hD2VT7N zW9w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; t=1777838581; s=strato-dkim-0002; d=strato.com; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=mzaWqHq7+PTBz7tIumUUKb9qiEb96ClwN+6v3qJcSgs=; b=HoowDOWmmvncs+L/BYRiqd/sF6D2R10Zm1sGBZ3O8hwpi6hhRSqmjZEAInIQ3CYdlP u7tZMKnbTTNUK8GVa/mEGdrRgAgKAC7Un5rlJlLuYn6/2V8fB9kSJnswFCoGnhn8pICA kqr/diRKYEJ1yJfll2pPVdYAgD/9+UTZ8DUnT0zAv0tIETF4oE04ZEvqNGTUUCBx5Uij kaIEqmJuqA/a98FEuc90Wm/FrSGswfmwlzeOUYOVOeXnybxzqvB19rOpUcnzAdRmoVgU cpTlzS3PcXp4JPUzJtDZlaELmTBeuPPD7StqAIiXVDApKbz2TtvuLha6p7ymnpkgx8AC Oeng== ARC-Authentication-Results: i=1; strato.com; arc=none; dkim=none X-RZG-CLASS-ID: mo01 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; t=1777838581; s=strato-dkim-0002; d=iokpp.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=mzaWqHq7+PTBz7tIumUUKb9qiEb96ClwN+6v3qJcSgs=; b=nGg20asYnfAUcJibRU0aZl4mNlX4+HlS+8Q5j/s+7mpC/PZzS9eSBDPRlCTv3ehMa4 gWL/DDIRroEEX4CdDKxw/3T9t4KDVu6xNq8DdN18pjx/baDewPv69yNsT0mqR7E+b4i9 wyCVQ0VywVDUyNiO0pPBK0YnZ1n7jh1ElTQjaY96FvfFsEuBYe1cuLuupBpcSZnBUSNn QqWI7pomfXB8xqQyZddQg9R9ey7fJw1QuP6KQy0kVGdH6NppEbyws+ANBGvIGIkGc7mV tCQHbdd3kZZgoP0BAIgR4y/FoUfZdj0qMrIbnW0dQYE8Q9VOZQNMCryLXeMh5x5owjt8 E7lw== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; t=1777838581; s=strato-dkim-0003; d=iokpp.de; h=Message-Id:Date:Subject:Cc:To:From:Cc:Date:From:Subject:Sender; bh=mzaWqHq7+PTBz7tIumUUKb9qiEb96ClwN+6v3qJcSgs=; b=ONtYeu8Lqhv72SO9PX8dgTZ24EEtza6ZVUrYKuIytBq3HFEFB5+NrxjYOEDsSsXlqJ qtOJXsSve3hzq/QhIgCA== X-RZG-AUTH: ":LmkFe0i9dN8c2t4QQyGBB/NDXvjDB6pBSfNuhhDSDt3O2JeaOom9QllqptkjU05r" Received: from Munilab01-lab.. by smtp.strato.de (RZmta 55.0.1 AUTH) with ESMTPSA id z79345243K304GW (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256 bits)) (Client did not present a certificate); Sun, 3 May 2026 22:03:00 +0200 (CEST) From: Bean Huo To: Keith Busch , Jens Axboe , Christoph Hellwig , Sagi Grimberg Cc: linux-nvme@lists.infradead.org, linux-kernel@vger.kernel.org, Bean Huo Subject: [PATCH] nvme: skip I/O Command Set specific Identify Controller on pre-2.0 devices Date: Sun, 3 May 2026 22:02:43 +0200 Message-Id: <20260503200243.2968366-1-beanhuo@iokpp.de> X-Mailer: git-send-email 2.34.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain; charset="us-ascii" From: Bean Huo The I/O Command Set specific Identify Controller (CNS 06h) is only defined in NVMe 2.0 and later. Pre-2.0 controllers return an Invalid Field error for this command, which shows up as noise in the NVMe error log visible via nvme-cli. Avoid sending a command that is guaranteed to fail by checking the controller version upfront. Note that the analogous CNS 05h (I/O Command Set specific Identify Namespace) is intentionally not gated on version, as commit 823340b7e877 ("nvme: always issue I/O Command Set specific Identify Namespace") allows pre-2.0 controllers to optionally implement it with graceful error handling. Signed-off-by: Bean Huo --- drivers/nvme/host/core.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/nvme/host/core.c b/drivers/nvme/host/core.c index 1e33af94c24b..71eeab8f661a 100644 --- a/drivers/nvme/host/core.c +++ b/drivers/nvme/host/core.c @@ -3400,7 +3400,13 @@ static int nvme_init_non_mdts_limits(struct nvme_ctrl *ctrl) else ctrl->max_zeroes_sectors = 0; + /* + * I/O Command Set specific Identify Controller (CNS 06h) is only + * defined in NVMe 2.0 and later. Sending it to pre-2.0 controllers + * results in an Invalid Field error from the device. + */ if (!nvme_is_io_ctrl(ctrl) || + ctrl->vs < NVME_VS(2, 0, 0) || !nvme_id_cns_ok(ctrl, NVME_ID_CNS_CS_CTRL) || test_bit(NVME_CTRL_SKIP_ID_CNS_CS, &ctrl->flags)) return 0; -- 2.34.1