From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mx.groups.io with SMTP id smtpd.web09.6653.1646273970837983656 for ; Wed, 02 Mar 2022 18:19:31 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="unable to parse pub key" header.i=@intel.com header.s=intel header.b=EF6W6qcX; spf=pass (domain: intel.com, ip: 134.134.136.100, mailfrom: hao.a.wu@intel.com) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1646273970; x=1677809970; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=mPPbP1MFhG7xPakEHHgVM3w3GXVGDEt7MVT344IOJx8=; b=EF6W6qcXt9QuRvnVL6Vey9kd60incfVRbH7kTxSGJ9CUJNk4QIedNThm E/NJoMRBXBKXQh7ycIHUi6wn/t6Fj3hczIWF2iqonmVVjJ1IxGobq9Hdx THujWy4/wq4bWgsdYtcBI3WNXe3uzvqKD1fB7JLAPean4FSFkRLDilA0s KCiWGOH+tKj4t1YtKwVNeLm4O1wMrcIdJzvaG927O1j945GP11aotK8Bw BwZ0LLoC2uc0npUAvVhjMrd9SvDJOHJxZ2e71YO12o92Wq2A/Bqtbve2c 3eny/JhArrmyPlcW6T+nSfDCAXCtYEEaay4tFQxDQfZqCH0E/ZadIiUvd Q==; X-IronPort-AV: E=McAfee;i="6200,9189,10274"; a="316771884" X-IronPort-AV: E=Sophos;i="5.90,150,1643702400"; d="scan'208";a="316771884" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 02 Mar 2022 18:19:30 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.90,150,1643702400"; d="scan'208";a="535625711" Received: from orsmsx601.amr.corp.intel.com ([10.22.229.14]) by orsmga007.jf.intel.com with ESMTP; 02 Mar 2022 18:19:30 -0800 Received: from orsmsx610.amr.corp.intel.com (10.22.229.23) by ORSMSX601.amr.corp.intel.com (10.22.229.14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Wed, 2 Mar 2022 18:19:29 -0800 Received: from orsmsx612.amr.corp.intel.com (10.22.229.25) by ORSMSX610.amr.corp.intel.com (10.22.229.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21; Wed, 2 Mar 2022 18:19:29 -0800 Received: from orsedg603.ED.cps.intel.com (10.7.248.4) by orsmsx612.amr.corp.intel.com (10.22.229.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2308.21 via Frontend Transport; Wed, 2 Mar 2022 18:19:29 -0800 Received: from NAM02-DM3-obe.outbound.protection.outlook.com (104.47.56.43) by edgegateway.intel.com (134.134.137.100) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2308.20; Wed, 2 Mar 2022 18:19:28 -0800 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=cgCizKxySc562n2NkD+KXxYnaFQ0HTUpEO1MbbPW80Y78P9RhBGrG/rsemVvcoJiRRU7vNEnG7LQ+KyZFmdZLXklqxUxtv1d0AaCY7fENDbwvFrDUkfAOiq1ECAhdJEIBIESOrvf5480cEpcJANgFvGp1IbasUMdqol0VoWoelcxe5liYN+T21hAgOQ4VI0Hywx+OJ7fheCESzoLa3/68mRvKmbFBwykZBkk5Mc9blWlcgbwXOnsrMrO5CeDZfbn5/WKXL6Uz/BV8U+nP5JrRjsJ1MzUUP+EacLN/zXCgbhgg7VF0slEYJ3C1EWrIjAnosn/M/Jwoj8H3wb4Pdvjrg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=yaFf1Vk5WhZ2QaUnDaGcPn8eyDanMw/WQNZP0cRe5Eo=; b=WNBvXmue+twOq6Z/G9LSutt7CFCO0gPz1+PGFy/MLlYQ3SJcTVAWEcskdmcAIsQUW7rWCM9gjsfBNsZbyJ1ilNHP9Vobjq0lhs+rqyjB4MspYjUQSava6FMIxN2tNj1BPWfYdxV0EThbdIwhr0m9cr4Gv/splZG2kIzjSENPnONwo8DZODuJRyUfTY6auv1r2WsweQVKAwHUCnbGjbJbGzNhBOe5yWquxTPLA9cjrx3Q0GCDwmCYwJyfkEIJ1rYasc7biqUk2KoONxtfPtdUZ5W0+VU2rRANZWfdu7uFEliRu3ozUMYXT1a2OwcELbDVjc/Jl3hFRSESRbT+mE3nhQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=intel.com; dmarc=pass action=none header.from=intel.com; dkim=pass header.d=intel.com; arc=none Received: from DM6PR11MB4025.namprd11.prod.outlook.com (2603:10b6:5:197::31) by PH0PR11MB5832.namprd11.prod.outlook.com (2603:10b6:510:141::7) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5038.14; Thu, 3 Mar 2022 02:19:26 +0000 Received: from DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::2dd0:9ba8:a8c:fc96]) by DM6PR11MB4025.namprd11.prod.outlook.com ([fe80::2dd0:9ba8:a8c:fc96%3]) with mapi id 15.20.5017.027; Thu, 3 Mar 2022 02:19:26 +0000 From: "Wu, Hao A" To: "devel@edk2.groups.io" , "Ma, Hua" CC: "Wang, Jian J" , "Gao, Liming" , "Ni, Ray" Subject: Re: [edk2-devel] [PATCH v1] MdeModulePkg: Add a check for metadata size in NvmExpress Driver Thread-Topic: [edk2-devel] [PATCH v1] MdeModulePkg: Add a check for metadata size in NvmExpress Driver Thread-Index: AQHYLqNZwJxdvjLqS0GU+izFs/XJ6ays6/8w Date: Thu, 3 Mar 2022 02:19:25 +0000 Message-ID: References: In-Reply-To: Accept-Language: en-US, zh-CN X-MS-Has-Attach: X-MS-TNEF-Correlator: dlp-product: dlpe-windows dlp-reaction: no-action dlp-version: 11.5.1.3 authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=intel.com; x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 07a062f7-5bce-44a4-4cd2-08d9fcbc3d31 x-ms-traffictypediagnostic: PH0PR11MB5832:EE_ x-ld-processed: 46c98d88-e344-4ed4-8496-4ed7712e255d,ExtAddr x-microsoft-antispam-prvs: x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; x-microsoft-antispam-message-info: BhTF2iGrkKtKdf77dVyydH3Ey5iLlTjFxDrSN/TLogV2pfnyrMzEep8xXqXrQUW5ZbWTgJ2JRIbNgqchVPsNqAJGXKMrnlU5LiRY6y0Sk73uJz60W+W9DBk1fA9QmnjkqYfeGKmYThleUwqG8HfC/vNI27YV2Yf+SvruIzpomUFK5uvfHn9rD+/f98QVpqM2Z8mAj3HHxdOHjyjRIJ46NUKi9wxV+qMPwU8Bc7rNFyeqEtQHLOHsDFIITino2Nm4QX3UEApodBW2/RrSePEFyh3BQOL0HzZxdB3SUj7Rb9z3IBOScvBelQXdcJ14wS2yC8fdqpyc8mEkoY0RsMSBzBwjosYdU17rqdjThw4yOQ8BGM9M5DhzrgkAfaM+SoaGEvSQalrdIQvcHLhiQa+bzEWzR7pyOcbOTnG1u6u17mpGbpy0HZD9/5BuxOiHtEeC6dhVSvNXMZtZAzGqG8X4UopLqFi+fGTJgP6+VkzAnfi5+3zlN4Qh5uLidbtFCqY2I+4VoVz50FW4trzbL2v9DLfkbA1ST9xvJTxvtKIcZcj/XHQRhUgXEavUpNX/SP/zuJPGdnsKoiZ5eSI3/ArdD8kbTOOeheNm1VaxxPaHkf7nXEWtb28UvlfaWV4p2ZiIvkWmEJ5ieum8Yxs1jh1s7r0cHrrj2ZQSm+GyeArXf8BzRWIW7anpSFNFeb0ypibFmBZs6vSYHycEiHuhwKcc+p/ZuzjCPqVADPOFuh3PS76vG64a8nJrMazX3po5EOFdKigzQzXFCzVjvIaULcyPES6ramyoSj5krJQ3wkdBJjcLLvxLJQmb/0WJZrf5rm7jSLfTeTVyGC/ZWOFArJHsDA== x-forefront-antispam-report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DM6PR11MB4025.namprd11.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230001)(366004)(6636002)(26005)(186003)(54906003)(38100700002)(9686003)(86362001)(110136005)(64756008)(66446008)(66556008)(66946007)(76116006)(66476007)(4326008)(33656002)(8676002)(5660300002)(2906002)(508600001)(71200400001)(38070700005)(122000001)(83380400001)(8936002)(55016003)(82960400001)(52536014)(107886003)(7696005)(6506007)(53546011)(316002)(966005);DIR:OUT;SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?q4MxKoy4797nO5MFMW9QkomNBxzi5KSrnQJA309EjWtzpf8SVYmX/KzjZk79?= =?us-ascii?Q?9vOzig0WtLgoaq6S6uByH9KB3T9DEQXi/bQLwfYXSHsUIks0pMdOyCkN3EUl?= =?us-ascii?Q?LA4smTZCv5rvn6I2lgTx9AFTpmVsjxbl2QrRgTo4QeDVE6ylfRXAcR2X3eOK?= =?us-ascii?Q?bpiTH95iDPvoPWuMv/qdtyaITmbRRfPRdToUG8VxE4dF/mDN4TfHafvV1oyj?= =?us-ascii?Q?0XGhFIxfhgvpU4QK25cUGkfEoJgFo7/CX7wXvQES7jlpYnrsIBs6puytuxJL?= =?us-ascii?Q?dm7nV4NCviH1K43xY2L8s8Cgy6Je+HrRk4P8cx06pdyIQnnOCQhLV4ka3rbd?= =?us-ascii?Q?Ovk8DeqaoG38iSi0fC/LY5WBiUrsUHDOLLoSX6FefJg6kexqs3/FYYJb+ZAJ?= =?us-ascii?Q?g2i7o1dl9Dw9xnfY3kjl52SNoLewTreiciED/MXMT++pZQVxm0SfwW3vHeln?= =?us-ascii?Q?QcnhlKUmIDkTzlBCw5ljO6qu6s7q/CJj93vmJ5A23yYpRYuOJuNedrb7ebei?= =?us-ascii?Q?S4yaF31ecWdetRXJiz09d3hsfj4bhvN5vjwBL/3+rfwKPNohzBE90cBrg983?= =?us-ascii?Q?eBhbGqoHynlr0giys67KPRKSvmJTk3ymN5nBhcFNFyUbCMWkBN7XNw7Zl9j2?= =?us-ascii?Q?YxOssliDWJL2IUIrrX0iyMGO/TN4ptYLtC9VCEqGQPCApPIIxMK0GeD7BUYX?= =?us-ascii?Q?v84pPvgV4/LEPlpsU8D9bKM04lwAz9r/rrRhRh+IuZhkGDJL221PwdJb8/VN?= =?us-ascii?Q?Qz3xrbXYwLx8dHr2117kWz5vnhU9ejWL0nShR69tcwzCXoUAkvLlpXepYjc6?= =?us-ascii?Q?1Uex2g6MLTRGiNDt4vIXDupV4l/GUe6CcFD2JY9iCI5EbQ4vEQw27taE1xsC?= =?us-ascii?Q?/FBVKivN2RhHHvGFCZBqUOf7evQsYN0vuRwMC7ZzUlvZmeJYTs8dU+i3yZmu?= =?us-ascii?Q?Dl5Bz00TlUWEVqTYSQr+c3qWbli+cIcKKWd3kNkiBSaOIUqrEleM+aeoInXI?= =?us-ascii?Q?tFUe3uS/jy3dty6lM0Qe7qZUPdDqZD3IRu9Zp9P9ZQTdL+11fJ+OZczQ7xfP?= =?us-ascii?Q?y+BXBX18bK6Uk9SxPKXvB92v2rIKbcpA5NUVia6wTTtdrJiqXJGmfHzs8QsO?= =?us-ascii?Q?y6pym8p6wn5lVXFJW/gVPSzGmvaoJvDfrl0r3ZSziIBwCPhQPUdqksYSUq0W?= =?us-ascii?Q?Vt5xErld33/5wD+hXVxQT6Kp5bUrYMZUa4MRJZ3SIG4KUe+kZLXLb+3WEE/e?= =?us-ascii?Q?TZ7Y2lDeS2vCZH0M0fFa5FeHpl9P73k0SRzQhkBLHv2rUkNVp4LdgMCL9azZ?= =?us-ascii?Q?e0A9iauTtM3eaINZPZGjTCig+8aDL9mYyw9Zk1z1tN7nRdNc7W8ApebFRqHf?= =?us-ascii?Q?qpMMDx+vB4C5ZqQdlXyDJPt9ISxYMOjbZN8D2xcAww503esa7guYNX4lQcTc?= =?us-ascii?Q?nFX53swMFGeLaxS/DM8VCIXw0di3Kp/o8ufYM+qr3i16G2G7NCpvbvmF+n2V?= =?us-ascii?Q?lBHhQW4UbDjEXt5/qH1lEvyXEpebd6S4vjAEldWZZHOsYiPA0HebHsaKyZeM?= =?us-ascii?Q?yoEVopxN30ZtWMkRpaq9DfjGXnn32KgnmuPf1XuX8m/IMG4Bz3BBrDdNRJXo?= =?us-ascii?Q?iyZUiugWJIv2zNU6xM4QtH0=3D?= MIME-Version: 1.0 X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM6PR11MB4025.namprd11.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 07a062f7-5bce-44a4-4cd2-08d9fcbc3d31 X-MS-Exchange-CrossTenant-originalarrivaltime: 03 Mar 2022 02:19:25.9078 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 46c98d88-e344-4ed4-8496-4ed7712e255d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: N4zhklCQpJuWXjKPf1KZshlUvbK0+qVoK+URNACjl9vcsGUxhz+5qsTdlFFdJAIZeLnIq0lUKV/LJJFiGw6b9Q== X-MS-Exchange-Transport-CrossTenantHeadersStamped: PH0PR11MB5832 Return-Path: hao.a.wu@intel.com X-OriginatorOrg: intel.com Content-Language: en-US Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Thanks for the patch, a couple of inline comments below: > -----Original Message----- > From: devel@edk2.groups.io On Behalf Of Ma, Hua > Sent: Thursday, March 3, 2022 10:06 AM > To: devel@edk2.groups.io > Cc: Wang, Jian J ; Gao, Liming > ; Wu, Hao A ; Ni, Ray > ; Ma, Hua > Subject: [edk2-devel] [PATCH v1] MdeModulePkg: Add a check for metadata > size in NvmExpress Driver >=20 > Ref: https://bugzilla.tianocore.org/show_bug.cgi?id=3D3856 >=20 > Currently this NvmeExpress Driver do not support metadata handling. > According to the NVME specs, metadata may be transferred to the host afte= r > the logical block data. It can overrun the input buffer which may only be= the > size of logical block data. >=20 > Add a check to return not support for the namespaces formatted with > metadata. >=20 > Cc: Jian J Wang > Cc: Liming Gao > Cc: Hao A Wu > Cc: Ray Ni >=20 > Signed-off-by: Hua Ma > --- > MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c | 15 > +++++++++++++++ > .../Bus/Pci/NvmExpressPei/NvmExpressPei.c | 15 +++++++++++++++ > 2 files changed, 30 insertions(+) >=20 > diff --git a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c > b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c > index 5a1eda8e8d..46b7dcba20 100644 > --- a/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c > +++ b/MdeModulePkg/Bus/Pci/NvmExpressDxe/NvmExpress.c > @@ -139,6 +139,21 @@ EnumerateNvmeDevNamespace ( >=20 > Flbas =3D NamespaceData->Flbas; > LbaFmtIdx =3D Flbas & 0xF; > + > + // > + // Currently this NVME driver only suport Metadata Size =3D=3D 0 > + // > + if (NamespaceData->LbaFormat[LbaFmtIdx].Ms) { 1. Please help to update to: if (NamespaceData->LbaFormat[LbaFmtIdx].Ms !=3D 0) { (Similar comment applies to NvmExpressPei) > + DEBUG (( > + DEBUG_INFO, 2. My preference is to use DEBUG_ERROR level here. Could you help to update= debug output level? (Similar comment applies to NvmExpressPei) Best Regards, Hao Wu > + "NVME IDENTIFY NAMESPACE [%d] Ms(%d) is not supported.\n", > + NamespaceId, > + NamespaceData->LbaFormat[LbaFmtIdx].Ms > + )); > + Status =3D EFI_UNSUPPORTED; > + goto Exit; > + } > + > Lbads =3D NamespaceData->LbaFormat[LbaFmtIdx].Lbad= s; > Device->Media.BlockSize =3D (UINT32)1 << Lbads; >=20 > diff --git a/MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c > b/MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c > index f73053fc3f..6e27950648 100644 > --- a/MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c > +++ b/MdeModulePkg/Bus/Pci/NvmExpressPei/NvmExpressPei.c > @@ -104,6 +104,21 @@ EnumerateNvmeDevNamespace ( > // > Flbas =3D NamespaceData->Flbas; > LbaFmtIdx =3D Flbas & 0xF; > + > + // > + // Currently this NVME driver only suport Metadata Size =3D=3D 0 // = if > + (NamespaceData->LbaFormat[LbaFmtIdx].Ms) { > + DEBUG (( > + DEBUG_INFO, > + "NVME IDENTIFY NAMESPACE [%d] Ms(%d) is not supported.\n", > + NamespaceId, > + NamespaceData->LbaFormat[LbaFmtIdx].Ms > + )); > + Status =3D EFI_UNSUPPORTED; > + goto Exit; > + } > + > Lbads =3D NamespaceData->LbaFormat[LbaFmtIdx].Lbads; >=20 > NamespaceInfo->Media.InterfaceType =3D MSG_NVME_NAMESPACE_DP; > -- > 2.32.0.windows.2 >=20 >=20 >=20 >=20 >=20