Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1756554AbdLTVYN (ORCPT ); Wed, 20 Dec 2017 16:24:13 -0500 Received: from mga02.intel.com ([134.134.136.20]:57039 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755543AbdLTVYK (ORCPT ); Wed, 20 Dec 2017 16:24:10 -0500 X-Amp-Result: UNSCANNABLE X-Amp-File-Uploaded: False X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.45,433,1508828400"; d="scan'208";a="3522679" Date: Wed, 20 Dec 2017 14:24:08 -0700 From: Ross Zwisler To: Matthew Wilcox Cc: Dave Hansen , Ross Zwisler , Michal Hocko , linux-kernel@vger.kernel.org, "Anaczkowski, Lukasz" , "Box, David E" , "Kogut, Jaroslaw" , "Koss, Marcin" , "Koziej, Artur" , "Lahtinen, Joonas" , "Moore, Robert" , "Nachimuthu, Murugasamy" , "Odzioba, Lukasz" , "Rafael J. Wysocki" , "Rafael J. Wysocki" , "Schmauss, Erik" , "Verma, Vishal L" , "Zheng, Lv" , Andrew Morton , Balbir Singh , Brice Goglin , Dan Williams , Jerome Glisse , John Hubbard , Len Brown , Tim Chen , devel@acpica.org, linux-acpi@vger.kernel.org, linux-mm@kvack.org, linux-nvdimm@lists.01.org, linux-api@vger.kernel.org, linuxppc-dev@lists.ozlabs.org Subject: Re: [PATCH v3 0/3] create sysfs representation of ACPI HMAT Message-ID: <20171220212408.GA8308@linux.intel.com> References: <20171214021019.13579-1-ross.zwisler@linux.intel.com> <20171214130032.GK16951@dhcp22.suse.cz> <20171218203547.GA2366@linux.intel.com> <20171220181937.GB12236@bombadil.infradead.org> <2da89d31-27a3-34ab-2dbb-92403c8215ec@intel.com> <20171220211649.GA32200@bombadil.infradead.org> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20171220211649.GA32200@bombadil.infradead.org> User-Agent: Mutt/1.9.1 (2017-09-22) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2165 Lines: 40 On Wed, Dec 20, 2017 at 01:16:49PM -0800, Matthew Wilcox wrote: > On Wed, Dec 20, 2017 at 12:22:21PM -0800, Dave Hansen wrote: > > On 12/20/2017 10:19 AM, Matthew Wilcox wrote: > > > I don't know what the right interface is, but my laptop has a set of > > > /sys/devices/system/memory/memoryN/ directories. Perhaps this is the > > > right place to expose write_bw (etc). > > > > Those directories are already too redundant and wasteful. I think we'd > > really rather not add to them. In addition, it's technically possible > > to have a memory section span NUMA nodes and have different performance > > properties, which make it impossible to represent there. > > > > In any case, ACPI PXM's (Proximity Domains) are guaranteed to have > > uniform performance properties in the HMAT, and we just so happen to > > always create one NUMA node per PXM. So, NUMA nodes really are a good fit. > > I think you're missing my larger point which is that I don't think this > should be exposed to userspace as an ACPI feature. Because if you do, > then it'll also be exposed to userspace as an openfirmware feature. > And sooner or later a devicetree feature. And then writing a portable > program becomes an exercise in suffering. > > So, what's the right place in sysfs that isn't tied to ACPI? A new > directory or set of directories under /sys/devices/system/memory/ ? Oh, the current location isn't at all tied to acpi except that it happens to be named 'hmat'. When it was all named 'hmem' it was just: /sys/devices/system/hmem Which has no ACPI-isms at all. I'm happy to move it under /sys/devices/system/memory/hmat if that's helpful, but I think we still have the issue that the data represented therein is still pulled right from the HMAT, and I don't know how to abstract it into something more platform agnostic until I know what data is provided by those other platforms. For example, the HMAT provides latency information and bandwidth information for both reads and writes. Will the devicetree/openfirmware/etc version have this same info, or will it be just different enough that it won't translate into whatever I choose to stick in sysfs?