From nobody Thu May 2 21:56:26 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1651221990025557.8912939519469; Fri, 29 Apr 2022 01:46:30 -0700 (PDT) Received: from localhost ([::1]:54252 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkMGi-0005bi-Ne for importer2@patchew.org; Fri, 29 Apr 2022 04:46:29 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39462) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4Q-0000Li-1W; Fri, 29 Apr 2022 04:33:46 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:57145) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4O-000592-EY; Fri, 29 Apr 2022 04:33:45 -0400 Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 794ED5C00E9; Fri, 29 Apr 2022 04:33:43 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute5.internal (MEProxy); Fri, 29 Apr 2022 04:33:43 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 29 Apr 2022 04:33:41 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1651221223; x= 1651307623; bh=baudGR2g2UWMwMShaB9gPREnF8Fm2vNjxfHurmUA2YQ=; b=c pZVMHCOCKcRFpDUvZ4zq7lhgzwxncUJMrNBZ0g5u0+N9nDLQ1W9wS5rUisqmEMGn yQ4sihB7AcjhYWarQXjxuG/o3I0zwQHkgCttNnmDWE6YjbaHpWWnAsivCIp5eBmr L6pEPTqJZSBLwneJtBO9EGjHUPTDKJzUpGKlrBKHAf87WtcJXBiTjDzG7BNxtsvo a1cQWPAhRXQ4BSf1BdaETAGhgT6VHjwUb2tLYlZLLBBM9rFFA9bdNdbg2EITafrq vGdq+BSwaY+uaJYdew9yV6tOGhMPKSloc5U/Dx3k3EZK5fcosTnASX4qesvU1dFj pR02R4sY+mt0qwyVCr8aQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1651221223; x=1651307623; bh=baudGR2g2UWMwMShaB9gPREnF8Fm2vNjxfH urmUA2YQ=; b=fMMdj7av6W9Xd1sElEMsRSfzPJEDjpE1/RxYX/p/MUFOhiA61l4 1Go6arzi5rKXDNPpKNJ/Z9C8uKM2XVtCPoPZZ98N/gy2/ATB5dzReSNdgu2AbFpE uUOVXj7XlqHI/jKljFDt71YyrvEpGpKHfbHOK8zuxk3jWA/8FpKObmjVKnPhg0t2 gDL9D2vJQEUj/eoPjpC+fkf6rrm3Cs5cYYcRML3m3Il+5IaNYQNdqHVj9gFSK+9G vevCmZa8tnSspf+JqQZ7ym0zBJCdM0CrL2Degvs1t7Zy/CaAr7N6F6ysVF11I6Js WZTe+DbyDzBCAS5Gk7bK7ZQ07owwaofOf/g== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudelgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpeejgfeilefgieevheekueevheehkeefveegiefgheefgfejjeehffefgedujedu geenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehith hssehirhhrvghlvghvrghnthdrughk X-ME-Proxy: From: Klaus Jensen To: qemu-devel@nongnu.org Subject: [PATCH v2 1/5] hw/nvme: enforce common serial per subsystem Date: Fri, 29 Apr 2022 10:33:32 +0200 Message-Id: <20220429083336.2201286-2-its@irrelevant.dk> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220429083336.2201286-1-its@irrelevant.dk> References: <20220429083336.2201286-1-its@irrelevant.dk> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=66.111.4.29; envelope-from=its@irrelevant.dk; helo=out5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , qemu-block@nongnu.org, Klaus Jensen , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Keith Busch , Luis Chamberlain , Klaus Jensen , Christoph Hellwig Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1651221991920100001 Content-Type: text/plain; charset="utf-8" From: Klaus Jensen The Identify Controller Serial Number (SN) is the serial number for the NVM subsystem and must be the same across all controller in the NVM subsystem. Enforce this. Reviewed-by: Christoph Hellwig Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/nvme/nvme.h | 1 + hw/nvme/subsys.c | 7 +++++++ 2 files changed, 8 insertions(+) diff --git a/hw/nvme/nvme.h b/hw/nvme/nvme.h index 739c8b8f7962..7f2e8f1b6491 100644 --- a/hw/nvme/nvme.h +++ b/hw/nvme/nvme.h @@ -48,6 +48,7 @@ typedef struct NvmeSubsystem { DeviceState parent_obj; NvmeBus bus; uint8_t subnqn[256]; + char *serial; =20 NvmeCtrl *ctrls[NVME_MAX_CONTROLLERS]; NvmeNamespace *namespaces[NVME_MAX_NAMESPACES + 1]; diff --git a/hw/nvme/subsys.c b/hw/nvme/subsys.c index fb58d639504e..691a90d20947 100644 --- a/hw/nvme/subsys.c +++ b/hw/nvme/subsys.c @@ -27,6 +27,13 @@ int nvme_subsys_register_ctrl(NvmeCtrl *n, Error **errp) return -1; } =20 + if (!subsys->serial) { + subsys->serial =3D g_strdup(n->params.serial); + } else if (strcmp(subsys->serial, n->params.serial)) { + error_setg(errp, "invalid controller serial"); + return -1; + } + subsys->ctrls[cntlid] =3D n; =20 for (nsid =3D 1; nsid < ARRAY_SIZE(subsys->namespaces); nsid++) { --=20 2.35.1 From nobody Thu May 2 21:56:26 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1651222787830411.6876389377135; Fri, 29 Apr 2022 01:59:47 -0700 (PDT) Received: from localhost ([::1]:46618 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkMTa-00039P-6Z for importer2@patchew.org; Fri, 29 Apr 2022 04:59:46 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39500) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4R-0000OO-VW; Fri, 29 Apr 2022 04:33:48 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:59237) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4Q-00059D-Bq; Fri, 29 Apr 2022 04:33:47 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 988E55C00DE; Fri, 29 Apr 2022 04:33:45 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Fri, 29 Apr 2022 04:33:45 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 29 Apr 2022 04:33:43 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1651221225; x= 1651307625; bh=njni0pQiwuI+g5bCW/VY6uyl1JMUaWLcuvk6fSnC+B8=; b=f LQKQVARPukDmMV8NGB3Eo0iG8Tyk0mIGyAdDqfbMn1z9ZkaQu/3t8qD2LSLYS3wC B3B4Q2QVZiL0V8wv4lOJnBPxsqlb1RnXMgzx9EgvlHSlEaHTivqNN4p6sAkz6m5M Q7V/n05CzKUSwOFkiGArMxgf9/kFiMbLj4Dr+b3nNTK5n+1vS0Ig9cZrsMeliJke HjWi5avJXuW+HfPbOjg9Anm04A4VZj0w3hYVqd1MNiTaHTl5OYptuekaKRikYhkB WBTWhgTIVdlhJbKHEECV8VH6UjU8qFKs2vHFNvpw77LBTt5d+32ziVHzGb+A3eE/ oN1BkLS2q4g/7D/rqmtXg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1651221225; x=1651307625; bh=njni0pQiwuI+g5bCW/VY6uyl1JMUaWLcuvk 6fSnC+B8=; b=MaebmFURnLUufprRWm5vtN/dqCPXnFytR4GMNrMssL7KeK8e2je 4yUbiZZ+Bp0ynmh2b41XBwRSF2cpaAI1iXYmwFWnTTj9GC0hVT/E17bZq5TYyf8n UgepQhCc6AqyF57qn+w1q4uF3YbHn4hrqicFs5CXdkRWWKTSiSl0z7OTH5YRUI90 sXbD2P8a0BxcwC7U016TwvvK4pUarMJblnFtv70DXaJLWvPasRqMh1ZIk7/Mr9PU QBhNBsad9nBsLUTfaAhfL2z8wLdUP+LIc9J30eBOM+pWsA3Kl/V7HDHE1El5mrrW L5bRZk+iDsPBiVYHBav1mZOoZkJ/sLF1QEQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudelgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpeejgfeilefgieevheekueevheehkeefveegiefgheefgfejjeehffefgedujedu geenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehith hssehirhhrvghlvghvrghnthdrughk X-ME-Proxy: From: Klaus Jensen To: qemu-devel@nongnu.org Subject: [PATCH v2 2/5] hw/nvme: do not auto-generate eui64 Date: Fri, 29 Apr 2022 10:33:33 +0200 Message-Id: <20220429083336.2201286-3-its@irrelevant.dk> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220429083336.2201286-1-its@irrelevant.dk> References: <20220429083336.2201286-1-its@irrelevant.dk> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=66.111.4.29; envelope-from=its@irrelevant.dk; helo=out5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , qemu-block@nongnu.org, libvir-list@redhat.com, Klaus Jensen , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Keith Busch , Luis Chamberlain , Klaus Jensen , Christoph Hellwig Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1651222790101100001 Content-Type: text/plain; charset="utf-8" From: Klaus Jensen We cannot provide auto-generated unique or persistent namespace identifiers (EUI64, NGUID, UUID) easily. Since 6.1, namespaces have been assigned a generated EUI64 of the form "52:54:00:". This is will be unique within a QEMU instance, but not globally. Revert that this is assigned automatically and immediately deprecate the compatibility parameter. Users can opt-in to this with the `eui64-default=3Don` device parameter or set it explicitly with `eui64=3DUINT64`. Cc: libvir-list@redhat.com Signed-off-by: Klaus Jensen Reviewed-by: Christoph Hellwig --- docs/about/deprecated.rst | 7 +++++++ hw/core/machine.c | 4 +++- hw/nvme/ns.c | 2 +- 3 files changed, 11 insertions(+), 2 deletions(-) diff --git a/docs/about/deprecated.rst b/docs/about/deprecated.rst index 896e5a97abbd..c65faa5ab4ad 100644 --- a/docs/about/deprecated.rst +++ b/docs/about/deprecated.rst @@ -356,6 +356,13 @@ contains native support for this feature and thus use = of the option ROM approach is obsolete. The native SeaBIOS support can be activated by using ``-machine graphics=3Doff``. =20 +``-device nvme-ns,eui64-default=3Don|off`` (since 7.1) +^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + +In QEMU versions 6.1, 6.2 and 7.0, the ``nvme-ns`` generates an EUI-64 +identifer that is not globally unique. If an EUI-64 identifer is required,= the +user must set it explicitly using the ``nvme-ns`` device parameter ``eui64= ``. + =20 Block device options '''''''''''''''''''' diff --git a/hw/core/machine.c b/hw/core/machine.c index cb9bbc844d24..1e2108d95f11 100644 --- a/hw/core/machine.c +++ b/hw/core/machine.c @@ -37,7 +37,9 @@ #include "hw/virtio/virtio.h" #include "hw/virtio/virtio-pci.h" =20 -GlobalProperty hw_compat_7_0[] =3D {}; +GlobalProperty hw_compat_7_0[] =3D { + { "nvme-ns", "eui64-default", "on"}, +}; const size_t hw_compat_7_0_len =3D G_N_ELEMENTS(hw_compat_7_0); =20 GlobalProperty hw_compat_6_2[] =3D { diff --git a/hw/nvme/ns.c b/hw/nvme/ns.c index af6504fad2d8..06a04131f192 100644 --- a/hw/nvme/ns.c +++ b/hw/nvme/ns.c @@ -641,7 +641,7 @@ static Property nvme_ns_props[] =3D { DEFINE_PROP_SIZE("zoned.zrwas", NvmeNamespace, params.zrwas, 0), DEFINE_PROP_SIZE("zoned.zrwafg", NvmeNamespace, params.zrwafg, -1), DEFINE_PROP_BOOL("eui64-default", NvmeNamespace, params.eui64_default, - true), + false), DEFINE_PROP_END_OF_LIST(), }; =20 --=20 2.35.1 From nobody Thu May 2 21:56:26 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 165122221680868.4911149960219; Fri, 29 Apr 2022 01:50:16 -0700 (PDT) Received: from localhost ([::1]:58788 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkMKN-0007VA-Iu for importer2@patchew.org; Fri, 29 Apr 2022 04:50:15 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39556) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4U-0000Rt-Pt; Fri, 29 Apr 2022 04:33:50 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:36799) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4S-00059s-Bz; Fri, 29 Apr 2022 04:33:50 -0400 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 7D6A85C0187; Fri, 29 Apr 2022 04:33:47 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute2.internal (MEProxy); Fri, 29 Apr 2022 04:33:47 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 29 Apr 2022 04:33:45 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1651221227; x= 1651307627; bh=IUnmQk2ZcnOUJLjs6iqtBhsaTbqcje3lEORpS3f3peM=; b=n Slj0t+3R9rxyA5YiUOusOXGuumtJqErpZL46Q4MUGWs2QaFoJgRhRIU2Y5BxZlug koprtSJ/TyvXW0ZpulfoZExyrogdAmho0XSyXvZ+oZTNTgsoweRV9+/9QAcuNrnI f/GShxAzHaqhkStgSdib4/hWYQXHbQ1lCZUr62UtsnEAcWdnxhnfeyRRzhOXn0Lb 704E6w4fr/Lr7kc88PQcoZzEk15fYD/4+R2Hg03CcXytz8hjU+hws54IrtLcfTCY zJ2ES41X3Rg2YdpsEd87h5Q1yhx/P7AixeWXQFbXu3CLNuEVNuHg0SEriWc7Kbgf oag1Xo+UQujUlRIKB0YcQ== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1651221227; x=1651307627; bh=IUnmQk2ZcnOUJLjs6iqtBhsaTbqcje3lEOR pS3f3peM=; b=lVfg68CWXUiiDlJF6z0eh3LWB933egEIUQ/Kc0jRWOaqSh9JZpZ PnNjRl4vjyC3OLsrUrAb8wl2wRawAE3lPDCHmGNYhVuuBiWhXSnbUxsAszgJHfq/ KQCYO5S0YP33KUmqdBbWn2wRAQDXFgmS3rSh1Ns4wUL+dYMvioJnx3pMuS0Q5gmp Je+ZRFDrg6cYSyVfjU9uPdv8V+FpaC5I/2F7BFhn78G94cpZXZBtFcrzRpmG+oCF Zza58igWtbfoe17yZ8SZE/J2UsEkbOkZ4UEbbehF8N4ACKNJ0BU3ryHutkQ3vPSB K+KW6UR/HsOJLjYdPBTduMJ6Rrads0YxZrA== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudelgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpeejgfeilefgieevheekueevheehkeefveegiefgheefgfejjeehffefgedujedu geenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehith hssehirhhrvghlvghvrghnthdrughk X-ME-Proxy: From: Klaus Jensen To: qemu-devel@nongnu.org Subject: [PATCH v2 3/5] hw/nvme: do not auto-generate uuid Date: Fri, 29 Apr 2022 10:33:34 +0200 Message-Id: <20220429083336.2201286-4-its@irrelevant.dk> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220429083336.2201286-1-its@irrelevant.dk> References: <20220429083336.2201286-1-its@irrelevant.dk> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=66.111.4.29; envelope-from=its@irrelevant.dk; helo=out5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , qemu-block@nongnu.org, Klaus Jensen , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Keith Busch , Luis Chamberlain , Klaus Jensen , Christoph Hellwig Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1651222218995100001 Content-Type: text/plain; charset="utf-8" From: Klaus Jensen Do not default to generate an UUID for namespaces if it is not explicitly specified. This is a technically a breaking change in behavior. However, since the UUID changes on every VM launch, it is not spec compliant and is of little use since the UUID cannot be used reliably anyway and the behavior prior to this patch must be considered buggy. Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen Reviewed-by: Christoph Hellwig --- hw/nvme/ns.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/nvme/ns.c b/hw/nvme/ns.c index 06a04131f192..1b9c9d11567f 100644 --- a/hw/nvme/ns.c +++ b/hw/nvme/ns.c @@ -614,7 +614,7 @@ static Property nvme_ns_props[] =3D { DEFINE_PROP_BOOL("detached", NvmeNamespace, params.detached, false), DEFINE_PROP_BOOL("shared", NvmeNamespace, params.shared, true), DEFINE_PROP_UINT32("nsid", NvmeNamespace, params.nsid, 0), - DEFINE_PROP_UUID("uuid", NvmeNamespace, params.uuid), + DEFINE_PROP_UUID_NODEFAULT("uuid", NvmeNamespace, params.uuid), DEFINE_PROP_UINT64("eui64", NvmeNamespace, params.eui64, 0), DEFINE_PROP_UINT16("ms", NvmeNamespace, params.ms, 0), DEFINE_PROP_UINT8("mset", NvmeNamespace, params.mset, 0), --=20 2.35.1 From nobody Thu May 2 21:56:26 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1651223150656714.6804701907078; Fri, 29 Apr 2022 02:05:50 -0700 (PDT) Received: from localhost ([::1]:49916 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkMZR-00041h-1h for importer2@patchew.org; Fri, 29 Apr 2022 05:05:49 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39566) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4W-0000TX-25; Fri, 29 Apr 2022 04:33:52 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:39473) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4U-0005AQ-9L; Fri, 29 Apr 2022 04:33:51 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 79F035C00C3; Fri, 29 Apr 2022 04:33:49 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 29 Apr 2022 04:33:49 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 29 Apr 2022 04:33:47 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1651221229; x= 1651307629; bh=FYefHQ0HLMjNe/wNx6HY2Yxnt4jH2YWaYHU9NjAWEu4=; b=o et4yWHT6tpxKdMlmkwzwMGhDN8GJK+r4YaM/KCopGrk+8Ejxa3rPVcC3KXcmzB0d UI5SBCX6StArN9PE4YnjmDSVpYLgkkpegTLk4owEsPGSpyehedVpZN7SEYkqesPp 9xn3/SNNk21lRrgd0fv7U7ah7ofr9c7dllQMEeI4thQ7zo49jEbds8J2tlUEH6f5 LJphtzTTML/kTuKz8KBY94tobyCOtF0JQ4SlolXX3g1daFBBLepI++Ss7x19dptJ /z7RDjhg7D3+uMscXaspSDgczhqUnXQyKA2vixmRKPhtzaqhTzeu9DjjmlqFucj1 /E7H4D4SqDX7Haz199Ang== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1651221229; x=1651307629; bh=FYefHQ0HLMjNe/wNx6HY2Yxnt4jH2YWaYHU 9NjAWEu4=; b=Mrb7S4cUDtRnyyOurV/5rIO9JMK8ESuSy/s8OIEmIm/Xo2yfZY6 VCPjUTJtZYvXP6cFngoVCg83grTpDH989fqBB0ufKa1BeqnO3XyK6flHAQPL/qwC SVTlNhIiR00xFZiTfsII1q7xB4dhu0FLDo0yYCrJsa04QGPx+sAvFY1IzJlKC3GX yTby5rF6d+vPR+iTNY6rweI1krMqumVTsBh2VNAWhMkXhfxqFRcIG/NuBdqdCyEU uY3KUdZHs0x69XnXUiUx1yqY/o9Sy9KOYVu2Hno1G/1szUwSyjlub04xW0c/yOa7 PVASEYrZ1gMeRtT40rQzOoKPizOAebhL5hQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudelgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpefggfdtleffteelteeivefgtddvueeigfehgeevueejueefhfeikeefteegveei ueenucffohhmrghinhepuhhuihgurdgurghtrgenucevlhhushhtvghrufhiiigvpedtne curfgrrhgrmhepmhgrihhlfhhrohhmpehithhssehirhhrvghlvghvrghnthdrughk X-ME-Proxy: From: Klaus Jensen To: qemu-devel@nongnu.org Subject: [PATCH v2 4/5] hw/nvme: do not report null uuid Date: Fri, 29 Apr 2022 10:33:35 +0200 Message-Id: <20220429083336.2201286-5-its@irrelevant.dk> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220429083336.2201286-1-its@irrelevant.dk> References: <20220429083336.2201286-1-its@irrelevant.dk> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=66.111.4.29; envelope-from=its@irrelevant.dk; helo=out5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , qemu-block@nongnu.org, Klaus Jensen , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Keith Busch , Luis Chamberlain , Klaus Jensen , Christoph Hellwig Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1651223152293100001 Content-Type: text/plain; charset="utf-8" From: Klaus Jensen Do not report the "null uuid" (all zeros) in the namespace identification descriptors. Reported-by: Luis Chamberlain Reported-by: Christoph Hellwig Reviewed-by: Christoph Hellwig Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/nvme/ctrl.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c index 08574c4dcbc8..5a727b6ec344 100644 --- a/hw/nvme/ctrl.c +++ b/hw/nvme/ctrl.c @@ -4955,16 +4955,13 @@ static uint16_t nvme_identify_ns_descr_list(NvmeCtr= l *n, NvmeRequest *req) return NVME_INVALID_FIELD | NVME_DNR; } =20 - /* - * If the EUI-64 field is 0 and the NGUID field is 0, the namespace mu= st - * provide a valid Namespace UUID in the Namespace Identification Desc= riptor - * data structure. QEMU does not yet support setting NGUID. - */ - uuid.hdr.nidt =3D NVME_NIDT_UUID; - uuid.hdr.nidl =3D NVME_NIDL_UUID; - memcpy(uuid.v, ns->params.uuid.data, NVME_NIDL_UUID); - memcpy(pos, &uuid, sizeof(uuid)); - pos +=3D sizeof(uuid); + if (!qemu_uuid_is_null(&ns->params.uuid)) { + uuid.hdr.nidt =3D NVME_NIDT_UUID; + uuid.hdr.nidl =3D NVME_NIDL_UUID; + memcpy(uuid.v, ns->params.uuid.data, NVME_NIDL_UUID); + memcpy(pos, &uuid, sizeof(uuid)); + pos +=3D sizeof(uuid); + } =20 if (ns->params.eui64) { eui64.hdr.nidt =3D NVME_NIDT_EUI64; --=20 2.35.1 From nobody Thu May 2 21:56:26 2024 Delivered-To: importer2@patchew.org Authentication-Results: mx.zohomail.com; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer2=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1651222802519154.3748937097664; Fri, 29 Apr 2022 02:00:02 -0700 (PDT) Received: from localhost ([::1]:46834 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1nkMTo-0003CG-7L for importer2@patchew.org; Fri, 29 Apr 2022 05:00:01 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:39584) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4X-0000Vr-KC; Fri, 29 Apr 2022 04:33:53 -0400 Received: from out5-smtp.messagingengine.com ([66.111.4.29]:40241) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1nkM4W-0005Al-4I; Fri, 29 Apr 2022 04:33:53 -0400 Received: from compute4.internal (compute4.nyi.internal [10.202.2.44]) by mailout.nyi.internal (Postfix) with ESMTP id 5BB1B5C0125; Fri, 29 Apr 2022 04:33:51 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute4.internal (MEProxy); Fri, 29 Apr 2022 04:33:51 -0400 Received: by mail.messagingengine.com (Postfix) with ESMTPA; Fri, 29 Apr 2022 04:33:49 -0400 (EDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=irrelevant.dk; h=cc:cc:content-transfer-encoding:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:sender:subject:subject:to:to; s=fm3; t=1651221231; x= 1651307631; bh=bI14oC0u4Q+ZjrEilFFFIb7wHdQ/tqnnaE7dh6MQ8cA=; b=G fJ4xOTM2RGJHNWRbqVQM3JjmxLMij/eOOEb0N+kFg/pN3nszMpX3y/vvDDl2scmk dF8B4erv3k6M43ryn4S2gl7YZfF6bQlUKj1KAGrvaOplC6DKuPx8CSHiqvCH3fNq 6vFQ43vVj6+vM5EvKJgXinyDMjapo2hgqvf0FlwFOkIF66tFBgddu+l+QoP4Z1Di 4NxsFmNGujHaN6R/yawHcLFeveYMCdlkaB+vDKspvCrSf/VcoHZVpoQ7Aahx/X2t 3yEgfPz535ex8nPpp/TUieJ0aMxdTEeynaLw+2IIiut5npLD5m0nPEJo1Dk646O2 C9htKes/IWJ0VpzOvLyeg== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :from:from:in-reply-to:in-reply-to:message-id:mime-version :references:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1651221231; x=1651307631; bh=bI14oC0u4Q+ZjrEilFFFIb7wHdQ/tqnnaE7 dh6MQ8cA=; b=YytnamAt0/Mx+a9cGJjbfCwvKQw7Db1c07FmGX/ACmncb0t1bBt r9cbmu3qaC7+Orl/BVuZOo4EAD+wFYm61i6ib0B96kMsrW7oPf8zp5WUnelFR6uy MnFnyOJf9aGZ+7QyakRGyT+jEt5C5s7+QgjnkysxTSgy608kq7yJXYevHY+fi8Jb FY16rrmfLQxDjbRHout/wribzFnzJXclHGfBv2Qx6VYfsafZVTPMETmA/t71xrNA dfQRRROjH1nGuvWlXv/az4q5yW22FNNWGKsg27DYWCowGD/Jv6fjWuc8neAHr7tF w2kYx+/qfFtR52XbnJnlT0i5hwRYwSSubrg== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvfedrudelgddtfecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefmlhgruhhs ucflvghnshgvnhcuoehithhssehirhhrvghlvghvrghnthdrughkqeenucggtffrrghtth gvrhhnpeejgfeilefgieevheekueevheehkeefveegiefgheefgfejjeehffefgedujedu geenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhrohhmpehith hssehirhhrvghlvghvrghnthdrughk X-ME-Proxy: From: Klaus Jensen To: qemu-devel@nongnu.org Subject: [PATCH v2 5/5] hw/nvme: bump firmware revision Date: Fri, 29 Apr 2022 10:33:36 +0200 Message-Id: <20220429083336.2201286-6-its@irrelevant.dk> X-Mailer: git-send-email 2.35.1 In-Reply-To: <20220429083336.2201286-1-its@irrelevant.dk> References: <20220429083336.2201286-1-its@irrelevant.dk> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer2=patchew.org@nongnu.org; helo=lists.gnu.org; Received-SPF: pass client-ip=66.111.4.29; envelope-from=its@irrelevant.dk; helo=out5-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Eduardo Habkost , qemu-block@nongnu.org, Klaus Jensen , =?UTF-8?q?Philippe=20Mathieu-Daud=C3=A9?= , Yanan Wang , Keith Busch , Luis Chamberlain , Klaus Jensen , Christoph Hellwig Errors-To: qemu-devel-bounces+importer2=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZM-MESSAGEID: 1651222804429100001 Content-Type: text/plain; charset="utf-8" From: Klaus Jensen The Linux kernel quirks the QEMU NVMe controller pretty heavily because of the namespace identifier mess. Since this is now fixed, bump the firmware revision number to allow the quirk to be disabled for this revision. As of now, bump the firmware revision number to be equal to the QEMU release version number. Reviewed-by: Keith Busch Signed-off-by: Klaus Jensen --- hw/nvme/ctrl.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/hw/nvme/ctrl.c b/hw/nvme/ctrl.c index 5a727b6ec344..650b606c6c24 100644 --- a/hw/nvme/ctrl.c +++ b/hw/nvme/ctrl.c @@ -6713,7 +6713,7 @@ static void nvme_init_ctrl(NvmeCtrl *n, PCIDevice *pc= i_dev) id->vid =3D cpu_to_le16(pci_get_word(pci_conf + PCI_VENDOR_ID)); id->ssvid =3D cpu_to_le16(pci_get_word(pci_conf + PCI_SUBSYSTEM_VENDOR= _ID)); strpadcpy((char *)id->mn, sizeof(id->mn), "QEMU NVMe Ctrl", ' '); - strpadcpy((char *)id->fr, sizeof(id->fr), "1.0", ' '); + strpadcpy((char *)id->fr, sizeof(id->fr), QEMU_VERSION, ' '); strpadcpy((char *)id->sn, sizeof(id->sn), n->params.serial, ' '); =20 id->cntlid =3D cpu_to_le16(n->cntlid); --=20 2.35.1