Received: by 2002:ac0:946b:0:0:0:0:0 with SMTP id j40csp3580407imj; Tue, 12 Feb 2019 00:50:29 -0800 (PST) X-Google-Smtp-Source: AHgI3IZ1Eiv1jNSmnHxkAwzsUnO1pY7eSlr6Qx8u9vnRqbbDy+rnKsmqnCpgL8/X46qt5aRwEEAW X-Received: by 2002:a62:931a:: with SMTP id b26mr2962735pfe.65.1549961429857; Tue, 12 Feb 2019 00:50:29 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1549961429; cv=none; d=google.com; s=arc-20160816; b=pAlYzXB5kHf1bpUJPGJEJCjg0OMSyW80tttGyOfeKXp9XlATcSDe3i+kXlkJteebjm qk1K3F6SAd4TOf/cZhPhFuWsZjtCkndZ/VrJ0PpNm4kBDNj1TuYf+jfwFwETSnJeimm1 AMwBub0I0xrDpEmcOhexOQqavOKuRcs09Qwb+T0Nh2hvtSjouEp2NhsgvcroTIAyEeO2 AJkXX3G5+w5Aa/P16TPn3OgqIlavlRnZBGSnWbM437zbwIduNwXs/TvIg45OJ1Mp5noa 9E5RF9DRANJSFSaPvvIU/I2j75nVj0HX78lmSss8/QEPbjcj32U5+aVMYJoL3b4hgHpG /LUw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :organization:references:in-reply-to:message-id:subject:cc:to:from :date; bh=LtRRWFVm+oQ3i7IAQxflrpeG6M0+4OA1KFTwJbKv1B0=; b=WsZWfB4gjP9sKe/BGbdY+wEY2Jho0r9JBVoF3zQONkzz8VudVsgScgMTnhAjPjiWMh 9fRCTUyqBlu+dTIY7jgaMfi7Es+wYcX2O7n1L3w0b9SwbHhb0p4i4oeoj5eJ5l6REYvC FAi9lu5NdSbzpzCG6zAX7EBwvbFb0wfTTfuKU+EB0RXa6Dd8eKdrzApcrzN4Cjhohfo2 L5D7AgECUoykL0fLa/pRaRlHyTmmK/SR1gGKsp78H2RftpSRpLFGFUKdNmNZ3FHJYvhB SOXPliYLlEU1+HouPBt6Py8T5Dy75n7hq1ACTi3E9LUbppnqva3yncoqeNfUKx+eaMA2 HowA== 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id s16si3035118pgi.23.2019.02.12.00.50.14; Tue, 12 Feb 2019 00:50:29 -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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728632AbfBLItY (ORCPT + 99 others); Tue, 12 Feb 2019 03:49:24 -0500 Received: from szxga07-in.huawei.com ([45.249.212.35]:35962 "EHLO huawei.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1728410AbfBLItY (ORCPT ); Tue, 12 Feb 2019 03:49:24 -0500 Received: from DGGEMS408-HUB.china.huawei.com (unknown [172.30.72.58]) by Forcepoint Email with ESMTP id 088157E31536FC437CC1; Tue, 12 Feb 2019 16:49:19 +0800 (CST) Received: from localhost (10.202.226.61) by DGGEMS408-HUB.china.huawei.com (10.3.19.208) with Microsoft SMTP Server id 14.3.408.0; Tue, 12 Feb 2019 16:49:13 +0800 Date: Tue, 12 Feb 2019 08:49:03 +0000 From: Jonathan Cameron To: Keith Busch CC: Brice Goglin , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , "linux-mm@kvack.org" , "Greg Kroah-Hartman" , Rafael Wysocki , "Hansen, Dave" , "Williams, Dan J" Subject: Re: [PATCHv4 10/13] node: Add memory caching attributes Message-ID: <20190212084903.00003ff5@huawei.com> In-Reply-To: <20190211152303.GA4525@localhost.localdomain> References: <20190116175804.30196-1-keith.busch@intel.com> <20190116175804.30196-11-keith.busch@intel.com> <4a7d1c0c-c269-d7b2-11cb-88ad62b70a06@inria.fr> <20190210171958.00003ab2@huawei.com> <20190211152303.GA4525@localhost.localdomain> Organization: Huawei X-Mailer: Claws Mail 3.17.3 (GTK+ 2.24.32; i686-w64-mingw32) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.202.226.61] X-CFilter-Loop: Reflected Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Mon, 11 Feb 2019 08:23:04 -0700 Keith Busch wrote: > On Sun, Feb 10, 2019 at 09:19:58AM -0800, Jonathan Cameron wrote: > > On Sat, 9 Feb 2019 09:20:53 +0100 > > Brice Goglin wrote: > > > > > Hello Keith > > > > > > Could we ever have a single side cache in front of two NUMA nodes ? I > > > don't see a way to find that out in the current implementation. Would we > > > have an "id" and/or "nodemap" bitmask in the sidecache structure ? > > > > This is certainly a possible thing for hardware to do. > > > > ACPI IIRC doesn't provide any means of representing that - your best > > option is to represent it as two different entries, one for each of the > > memory nodes. Interesting question of whether you would then claim > > they were half as big each, or the full size. Of course, there are > > other possible ways to get this info beyond HMAT, so perhaps the interface > > should allow it to be exposed if available? > > HMAT doesn't do this, but I want this interface abstracted enough from > HMAT to express whatever is necessary. > > The CPU cache is the closest existing exported attributes to this, > and they provide "shared_cpu_list". To that end, I can export a > "shared_node_list", though previous reviews strongly disliked multi-value > sysfs entries. :( > > Would shared-node symlinks capture the need, and more acceptable? My inclination is that it's better to follow an existing pattern than invent a new one that breaks people's expectations. However, don't feel that strongly about it as long as the interface is functional and intuitive. > > > Also, don't know if it's just me, but calling these sidecaches is > > downright confusing. In ACPI at least they are always > > specifically referred to as Memory Side Caches. > > I'd argue there should even by a hyphen Memory-Side Caches, the point > > being that that they are on the memory side of the interconnected > > rather than the processor side. Of course an implementation > > choice might be to put them off to the side (as implied by sidecaches) > > in some sense, but it's not the only one. > > > > :) > > Now that you mention it, I agree "side" is ambiguous. Maybe call it > "numa_cache" or "node_cache"? I'm not sure any of the options work well. My inclination would be to use the full name and keep the somewhat redundant memory there. The other two feel like they could just as easily be coherent caches at accelerators for example... memory_side_cache? The fun of naming ;) Jonathan