Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754077AbcJKRIj (ORCPT ); Tue, 11 Oct 2016 13:08:39 -0400 Received: from mail-it0-f45.google.com ([209.85.214.45]:38159 "EHLO mail-it0-f45.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752183AbcJKRIh (ORCPT ); Tue, 11 Oct 2016 13:08:37 -0400 MIME-Version: 1.0 In-Reply-To: <20161010171902.GA30774@intel.com> References: <1475894763-64683-1-git-send-email-fenghua.yu@intel.com> <1475894763-64683-6-git-send-email-fenghua.yu@intel.com> <20161008203306.GA7672@linux.intel.com> <20161010171902.GA30774@intel.com> From: Nilay Vaish Date: Tue, 11 Oct 2016 12:07:33 -0500 Message-ID: Subject: Re: [PATCH v3 05/18] Documentation, x86: Documentation for Intel resource allocation user interface To: "Luck, Tony" Cc: Fenghua Yu , Thomas Gleixner , "H. Peter Anvin" , Ingo Molnar , Peter Zijlstra , Stephane Eranian , Borislav Petkov , Dave Hansen , Shaohua Li , David Carrillo-Cisneros , Ravi V Shankar , Sai Prakhya , Vikas Shivappa , linux-kernel , x86 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2569 Lines: 67 On 10 October 2016 at 12:19, Luck, Tony wrote: > On Sat, Oct 08, 2016 at 01:33:06PM -0700, Fenghua Yu wrote: >> On Sat, Oct 08, 2016 at 12:12:07PM -0500, Nilay Vaish wrote: >> > On 7 October 2016 at 21:45, Fenghua Yu wrote: >> > > From: Fenghua Yu >> > > >> > > +L3 details (code and data prioritization disabled) >> > > +-------------------------------------------------- >> > > +With CDP disabled the L3 schemata format is: >> > > + >> > > + L3:=;=;... >> > > + >> > > +L3 details (CDP enabled via mount option to resctrl) >> > > +---------------------------------------------------- >> > > +When CDP is enabled, you need to specify separate cache bit masks for >> > > +code and data access. The generic format is: >> > > + >> > > + L3:=,;=,;... >> > >> > Can we drop L3 here and instead say: >> > L:=,;=,;... >> > >> > and similarly for without CDP as well. >> >> L3 and L2 are similar but different. L2 doesn't have CDP feature. It would >> be better to talk them separately here. >> > > Perhaps we should document the general form, and then show examples > for L3 (and later L2 and other resources as they are added). Note > in particular that other resources are not cache-like ... so the > pattern you see between L3 and L2 is short lived. Future resources > that can be controlled are not caches. > > General form of a resource line is: > > {resource type}:[{resource instanceM}={resource value};]*N > > where "M" iterates over all online instances of this resource, > and "N" is the total number. [and the ";" is a separator, not a terminator, > but I'm not sure how to write that]. > > For the "L3" resource there are two formats for the value. > With CDP enabled: > {d-cache bit mask},{i-cache bit mask} > with CDP disabled: > {cache bit mask} I am in favour of documenting the general form, but Fenghua and you can take a call on this. > > "L2" resource doesn't support CDP, so the only format is {cache bit mask} > > > The next resource coming will have values that are simple ranges {0 .. max} > Regarding addition of more resources, I was wondering if one common definition of struct rdt_resource to be used for each resource the way to take. As you point out, L2 caches will not support CDP, but cdp would be part of the variable describing L2 cache. Should we have separate structs for each resource? -- Nilay