Received: by 2002:ad5:474a:0:0:0:0:0 with SMTP id i10csp3497149imu; Mon, 28 Jan 2019 06:01:20 -0800 (PST) X-Google-Smtp-Source: ALg8bN4kMG3hSiiWziv0GoQxegG9KC4uszz8rm/rNnsEQRbXG0r7Q2wFn6J0/YgOaBszft7g7GFr X-Received: by 2002:a62:8d4f:: with SMTP id z76mr22669230pfd.2.1548684080179; Mon, 28 Jan 2019 06:01:20 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1548684080; cv=none; d=google.com; s=arc-20160816; b=PeTKyWO12we258ySSxHhFFZb/DdyFRQri2V6qssx4cQBLcjfB/P46icRdKOGLEJk8P nupv/ka4gbZlz+Zx9k2/7L+PgZj2odeGmdIFQcXCorH0Or1cNjQm0JHJpVzD8uLwTlXw +K6TLA8J/uTscBMmKLf4/+4fxfodADoSVC6hABXVY/smgHibU+zoGv/iBUx5Ua5xTo+1 BDq4kLxMlGYBa49EKsaiMQcPjOchDQGRujLomvyUSGubbs1DTEIzl3QgkkHD+83fdzqX tg6+rsIEHFquGtRf5zRqLx44CShvh5uFgfIZmwUgXfPtn24c7bcgW/W3r+H+4gbn0/rr 02iQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:user-agent:in-reply-to :content-disposition:mime-version:references:message-id:subject:cc :to:from:date; bh=06SudRvdaDy4nRU0ZUUzs37QriPqm1vKWiKyPDRBmcU=; b=pTabN2H8BqZysh1VxYmcT5EoPJxPDvctbeMOhvLA23JIE8MIYiYYsiby3c4D2JtpAw ONzQ753HQapCNkWJPskOz6kPp6MFiU2ojEmqicXBK6rYtzBR16eOfUtozEuxgJ5YGPQW CC9FLQK4fbW3J7CPNTr1HsURtT1EdOhD3ekKxw6yewLI6zH1DLNFRDULUGz7FapD67W+ gUK1PT8cyfWk+VeeOrhtKsr3K0vUtD73us1SLNSr+NMmDYDSZPrUgIYZrUj+vgevQhwe TW0clxWI0XvE2ltPSG2s/b4iieWXieJGRMAoKlkS8SkXHLSCFVInNOvo6NHw1XA6ENQp IpQA== ARC-Authentication-Results: i=1; mx.google.com; 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=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 124si33807343pgg.397.2019.01.28.06.01.02; Mon, 28 Jan 2019 06:01:20 -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; 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=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727052AbfA1OAN (ORCPT + 99 others); Mon, 28 Jan 2019 09:00:13 -0500 Received: from mx2.suse.de ([195.135.220.15]:48230 "EHLO mx1.suse.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726647AbfA1OAN (ORCPT ); Mon, 28 Jan 2019 09:00:13 -0500 X-Virus-Scanned: by amavisd-new at test-mx.suse.de Received: from relay2.suse.de (unknown [195.135.220.254]) by mx1.suse.de (Postfix) with ESMTP id 6D5EBAF3D; Mon, 28 Jan 2019 14:00:10 +0000 (UTC) Date: Mon, 28 Jan 2019 15:00:09 +0100 From: Michal Hocko To: Keith Busch Cc: linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org, linux-mm@kvack.org, Greg Kroah-Hartman , Rafael Wysocki , Dave Hansen , Dan Williams , linux-api@vger.kernel.org Subject: Re: [PATCHv5 00/10] Heterogeneuos memory node attributes Message-ID: <20190128140009.GA11059@dhcp22.suse.cz> References: <20190124230724.10022-1-keith.busch@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20190124230724.10022-1-keith.busch@intel.com> User-Agent: Mutt/1.10.1 (2018-07-13) Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Is there any reason why is this not CCing linux-api (Cced now). On Thu 24-01-19 16:07:14, Keith Busch wrote: > == Changes since v4 == > > All public interfaces have kernel docs. > > Renamed "class" to "access", docs and changed logs updated > accordingly. (Rafael) > > The sysfs hierarchy is altered to put initiators and targets in their > own attribute group directories (Rafael). > > The node lists are removed. This feedback is in conflict with v1 > feedback, but consensus wants to remove multi-value sysfs attributes, > which includes lists. We only have symlinks now, just like v1 provided. > > Documentation and code patches are combined such that the code > introducing new attributes and its documentation are in the same > patch. (Rafael and Dan). > > The performance attributes, bandwidth and latency, are moved into the > initiators directory. This should make it obvious for which node > access the attributes apply, which was previously ambiguous. > (Jonathan Cameron). > > The HMAT code selecting "local" initiators is substantially changed. > Only PXM's that have identical performance to the HMAT's processor PXM > in Address Range Structure are registered. This is to avoid considering > nodes identical when only one of several perf attributes are the same. > (Jonathan Cameron). > > Verbose variable naming. Examples include "initiator" and "target" > instead of "i" and "t", "mem_pxm" and "cpu_pxm" instead of "m" and > "p". (Rafael) > > Compile fixes for when HMEM_REPORTING is not set. This is not a user > selectable config option, default 'n', and will have to be selected > by other config options that require it (Greg KH and Rafael). > > == Background == > > Platforms may provide multiple types of cpu attached system memory. The > memory ranges for each type may have different characteristics that > applications may wish to know about when considering what node they want > their memory allocated from. > > It had previously been difficult to describe these setups as memory > rangers were generally lumped into the NUMA node of the CPUs. New > platform attributes have been created and in use today that describe > the more complex memory hierarchies that can be created. > > This series' objective is to provide the attributes from such systems > that are useful for applications to know about, and readily usable with > existing tools and libraries. Can you provide a highlevel description of these new attributes and how they are supposed to be used. Mentioning usecases is also due consideirng the amount of code this adds. > Keith Busch (10): > acpi: Create subtable parsing infrastructure > acpi: Add HMAT to generic parsing tables > acpi/hmat: Parse and report heterogeneous memory > node: Link memory nodes to their compute nodes > acpi/hmat: Register processor domain to its memory > node: Add heterogenous memory access attributes > acpi/hmat: Register performance attributes > node: Add memory caching attributes > acpi/hmat: Register memory side cache attributes > doc/mm: New documentation for memory performance > > Documentation/ABI/stable/sysfs-devices-node | 87 ++++- > Documentation/admin-guide/mm/numaperf.rst | 167 ++++++++ > arch/arm64/kernel/acpi_numa.c | 2 +- > arch/arm64/kernel/smp.c | 4 +- > arch/ia64/kernel/acpi.c | 12 +- > arch/x86/kernel/acpi/boot.c | 36 +- > drivers/acpi/Kconfig | 1 + > drivers/acpi/Makefile | 1 + > drivers/acpi/hmat/Kconfig | 9 + > drivers/acpi/hmat/Makefile | 1 + > drivers/acpi/hmat/hmat.c | 537 ++++++++++++++++++++++++++ > drivers/acpi/numa.c | 16 +- > drivers/acpi/scan.c | 4 +- > drivers/acpi/tables.c | 76 +++- > drivers/base/Kconfig | 8 + > drivers/base/node.c | 354 ++++++++++++++++- > drivers/irqchip/irq-gic-v2m.c | 2 +- > drivers/irqchip/irq-gic-v3-its-pci-msi.c | 2 +- > drivers/irqchip/irq-gic-v3-its-platform-msi.c | 2 +- > drivers/irqchip/irq-gic-v3-its.c | 6 +- > drivers/irqchip/irq-gic-v3.c | 10 +- > drivers/irqchip/irq-gic.c | 4 +- > drivers/mailbox/pcc.c | 2 +- > include/linux/acpi.h | 6 +- > include/linux/node.h | 60 ++- > 25 files changed, 1344 insertions(+), 65 deletions(-) > create mode 100644 Documentation/admin-guide/mm/numaperf.rst > create mode 100644 drivers/acpi/hmat/Kconfig > create mode 100644 drivers/acpi/hmat/Makefile > create mode 100644 drivers/acpi/hmat/hmat.c > > -- > 2.14.4 -- Michal Hocko SUSE Labs