[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <6e2a1dba-80a8-42bf-127c-2f5c2441c248@intel.com>
Date: Tue, 4 Dec 2018 15:54:22 -0800
From: Dave Hansen <dave.hansen@...el.com>
To: jglisse@...hat.com, linux-mm@...ck.org
Cc: Andrew Morton <akpm@...ux-foundation.org>,
linux-kernel@...r.kernel.org,
"Rafael J . Wysocki" <rafael@...nel.org>,
Matthew Wilcox <willy@...radead.org>,
Ross Zwisler <ross.zwisler@...ux.intel.com>,
Keith Busch <keith.busch@...el.com>,
Dan Williams <dan.j.williams@...el.com>,
Haggai Eran <haggaie@...lanox.com>,
Balbir Singh <bsingharora@...il.com>,
"Aneesh Kumar K . V" <aneesh.kumar@...ux.ibm.com>,
Benjamin Herrenschmidt <benh@...nel.crashing.org>,
Felix Kuehling <felix.kuehling@....com>,
Philip Yang <Philip.Yang@....com>,
Christian König <christian.koenig@....com>,
Paul Blinzer <Paul.Blinzer@....com>,
Logan Gunthorpe <logang@...tatee.com>,
John Hubbard <jhubbard@...dia.com>,
Ralph Campbell <rcampbell@...dia.com>,
Michal Hocko <mhocko@...nel.org>,
Jonathan Cameron <jonathan.cameron@...wei.com>,
Mark Hairgrove <mhairgrove@...dia.com>,
Vivek Kini <vkini@...dia.com>,
Mel Gorman <mgorman@...hsingularity.net>,
Dave Airlie <airlied@...hat.com>,
Ben Skeggs <bskeggs@...hat.com>,
Andrea Arcangeli <aarcange@...hat.com>,
Rik van Riel <riel@...riel.com>,
Ben Woodard <woodard@...hat.com>, linux-acpi@...r.kernel.org
Subject: Re: [RFC PATCH 00/14] Heterogeneous Memory System (HMS) and hbind()
On 12/3/18 3:34 PM, jglisse@...hat.com wrote:
> This patchset use the above scheme to expose system topology through
> sysfs under /sys/bus/hms/ with:
> - /sys/bus/hms/devices/v%version-%id-target/ : a target memory,
> each has a UID and you can usual value in that folder (node id,
> size, ...)
>
> - /sys/bus/hms/devices/v%version-%id-initiator/ : an initiator
> (CPU or device), each has a HMS UID but also a CPU id for CPU
> (which match CPU id in (/sys/bus/cpu/). For device you have a
> path that can be PCIE BUS ID for instance)
>
> - /sys/bus/hms/devices/v%version-%id-link : an link, each has a
> UID and a file per property (bandwidth, latency, ...) you also
> find a symlink to every target and initiator connected to that
> link.
>
> - /sys/bus/hms/devices/v%version-%id-bridge : a bridge, each has
> a UID and a file per property (bandwidth, latency, ...) you
> also find a symlink to all initiators that can use that bridge.
We support 1024 NUMA nodes on x86. The ACPI HMAT expresses the
connections between each node. Let's suppose that each node has some
CPUs and some memory.
That means we'll have 1024 target directories in sysfs, 1024 initiator
directories in sysfs, and 1024*1024 link directories. Or, would the
kernel be responsible for "compiling" the firmware-provided information
down into a more manageable number of links?
Some idiot made the mistake of having one sysfs directory per 128MB of
memory way back when, and now we have hundreds of thousands of
/sys/devices/system/memory/memoryX directories. That sucks to manage.
Isn't this potentially repeating that mistake?
Basically, is sysfs the right place to even expose this much data?
Powered by blists - more mailing lists