Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3903482imu; Mon, 28 Jan 2019 13:01:55 -0800 (PST) X-Google-Smtp-Source: ALg8bN6ppxOSY1PuwECG68EREWKoKTiATGSEO1JDvaRJFnZcgkQZ577hXRfSvn8nRCfJj0S7UwW0 X-Received: by 2002:a62:7792:: with SMTP id s140mr23258720pfc.26.1548709315011; Mon, 28 Jan 2019 13:01:55 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548709314; cv=none; d=google.com; s=arc-20160816; b=fySbBE9NjAr9BWGRwKNZulzbwOhHEjDSL+gd+h+PR1/ADCiBWJDM0XYUGbYSSI2pU1 NZo+GtxPb4be0DDb03b1IjfyLBZ9m+F8YU7lxnwqRKFOtOZu24aJJl9Yt/ZTChLKM9OL g07Bc+1cJhXXdtmz4lmhse53K/CxuqZ1B6PSN05MtLE61PpVWLduuAxpN6p/9GWi0Z0k 5IN0Wu4ACHbzg9PYsNVrygYfRt+d8wNhAN8289Aotwp8P6ietzyjn8gL5zDuAv2eTCxK A+aVZH7wkbVRSMaz8F+yJn9c1SpRMThlpLgAryTl/GfbgWAeyd2QSd2uCPIG5z3Hf052 c71g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=jsY7fWU0jAnav2iwrtKDl7ahJxHUtI91YTs0IMY/ZHw=; b=doyTLInFEjpJ1bLtiv223zgajb50TdJSxWgUNcHeEBiz38JOoATeUIvpnJqVMTavf1 /8NEWIv68l0gLIn4rtxO43Y++/ZIGcPmTP0CuY5BBMVFXMtzVAaZ+wyegXOcNtKpYGwG 8BnLiFM5JZ8unv3P0C1uUMye/g/hmKtpY/TpS3yLgdqKGctRVkEXk/SNtbFS3w0I5APY GMNtL7W5rgdyWL+w8ZhqXB11KBE9YuMH5RIF2N37qKZZcSAlIgNJHqLntjmMUh6sV5n3 J8s0LdFHkw4S+qJrvj4FBg1BEt/g7L1zLvmvFtk4doFjAhM/IxDppgSYUz+rAf7dWz3+ 1PCg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=V0eeaEsV; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id b18si33035181plz.105.2019.01.28.13.01.39; Mon, 28 Jan 2019 13:01:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@intel-com.20150623.gappssmtp.com header.s=20150623 header.b=V0eeaEsV; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727156AbfA1VBe (ORCPT + 99 others); Mon, 28 Jan 2019 16:01:34 -0500 Received: from mail-ot1-f65.google.com ([209.85.210.65]:42943 "EHLO mail-ot1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726859AbfA1VBd (ORCPT ); Mon, 28 Jan 2019 16:01:33 -0500 Received: by mail-ot1-f65.google.com with SMTP id v23so15936341otk.9 for ; Mon, 28 Jan 2019 13:01:32 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=intel-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=jsY7fWU0jAnav2iwrtKDl7ahJxHUtI91YTs0IMY/ZHw=; b=V0eeaEsVV6GtJiMI6v/LtR0bgPwdy9C7Jk/3eL9b1oU0PyrVr10o8zf1kWCH5gwXtj 5OT0xjPaM0me3q0b5AY9gqUw58DB30pVKMWzDXXuvSzWNkpywHNvn4BbgBAl5Xy1Xv7n zDoLpqp/vxvo95TL0sS7VommpgPVq3iXt6n5zlf+DcBrdDxWPOmRhq64Qw+aRCe9sdVv crjqQ2Cxne/4u5kM6g156E2DuGWV4w/tc9rVu8Uq9BXy6A6ZLa25pE5XvaBJfXDIAMEn bNvn+0OCL6tKMpRue3eaIS8SyI6AzAlYD8phe7hMbdC8ODWTBQYUH9jKpLBVRmOdx38U 4zSA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=jsY7fWU0jAnav2iwrtKDl7ahJxHUtI91YTs0IMY/ZHw=; b=KGmTpWN6QUiFRXjPb+fckKNFIITUDE7Zm3O7I5pfWjbEjHNSnZSAidQX7vqQVGwHqm sEz1h6VZfXiY0UZ71FoyTgkjawezuCmMQZsRY6ZJnqQjfpPty9GjY4R735rwTvb0EB5g dwkvMR9iatHFSEQK8apAZEZyg2DRroUVbQ4WaP47UzLiU96zKcdthUAyYd9kOVdDXdgN Or1re5HJ1bMax1jhP769+o1LDF4ax+C9YfV7kwToTv697fxfmQSkpBN5Hxh93oSf/jg1 lLpOHnUEObklirKpeY6HdqPlvuf3dKvHgyPGnEyQj6Q2ejbCZ5MZhDf2lb0gqZnkAAS5 5GrQ== X-Gm-Message-State: AJcUukddmOi5gUbEl/W8amd4CNC8pp+lwHIo5AIVMFmQRTPMQOikzRkz 5QWx9mwUhPD/vPKxAmUUuWXyZ++Hv4zkCn2B9Dy0Pw== X-Received: by 2002:a9d:775a:: with SMTP id t26mr16566293otl.32.1548709291057; Mon, 28 Jan 2019 13:01:31 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Dan Williams Date: Mon, 28 Jan 2019 13:01:19 -0800 Message-ID: Subject: Re: [PATCH] nfit: add Hyper-V NVDIMM DSM command set to white list To: Dexuan Cui Cc: Ross Zwisler , Vishal Verma , Dave Jiang , "Rafael J. Wysocki" , Len Brown , "linux-nvdimm@lists.01.org" , "linux-acpi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , Michael Kelley , Sasha Levin , Haiyang Zhang , Stephen Hemminger , KY Srinivasan , Josh Poulson , "driverdev-devel@linuxdriverproject.org" Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Dexuan, Looks good. Just one update request and a note below... On Wed, Jan 23, 2019 at 12:51 PM Dexuan Cui wrote: > > > Add the Hyper-V _DSM command set to the white list of NVDIMM command > sets. > > This command set is documented at http://www.uefi.org/RFIC_LIST > (see the link to "Virtual NVDIMM 0x1901" on the page). > > Signed-off-by: Dexuan Cui > --- > > I'm going to change the user-space utility "ndctl" to support Hyper-V Virtual NVDIMM. > This kernel patch is required first. > > drivers/acpi/nfit/core.c | 5 ++++- > drivers/acpi/nfit/nfit.h | 6 +++++- > include/uapi/linux/ndctl.h | 1 + > 3 files changed, 10 insertions(+), 2 deletions(-) > > diff --git a/drivers/acpi/nfit/core.c b/drivers/acpi/nfit/core.c > index 011d3db19c80..fb48cb17a519 100644 > --- a/drivers/acpi/nfit/core.c > +++ b/drivers/acpi/nfit/core.c > @@ -1840,7 +1840,7 @@ static int acpi_nfit_add_dimm(struct acpi_nfit_desc *acpi_desc, > dev_set_drvdata(&adev_dimm->dev, nfit_mem); > > /* > - * Until standardization materializes we need to consider 4 > + * Until standardization materializes we need to consider 5 > * different command sets. Note, that checking for function0 (bit0) > * tells us if any commands are reachable through this GUID. > */ This comment is stale. This "HYPERV" family is the first example of the "right" way to define a new NVDIMM command set. Lets update it to mention the process and considerations for submitting new command sets to UEFI (http://www.uefi.org/RFIC_LIST). The fact that there's now a defined process is a step forward from when this comment was initially written. Also, the fact that the process encourages "adopt" vs "supersede" addresses the main concern about vendor-specific command-set proliferation. > @@ -1865,6 +1865,8 @@ static int acpi_nfit_add_dimm(struct acpi_nfit_desc *acpi_desc, > dsm_mask &= ~(1 << 8); > } else if (nfit_mem->family == NVDIMM_FAMILY_MSFT) { > dsm_mask = 0xffffffff; > + } else if (nfit_mem->family == NVDIMM_FAMILY_HYPERV) { > + dsm_mask = 0x1f; Just a note that starting with commit 5e9e38d0db1d "acpi/nfit: Block function zero DSMs", bit0 in this mask will be cleared to ensure that only the kernel has the ability to probe for supported DSM functions.