From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752040AbcGNRQt (ORCPT ); Thu, 14 Jul 2016 13:16:49 -0400 Received: from mga02.intel.com ([134.134.136.20]:44568 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751295AbcGNRQr (ORCPT ); Thu, 14 Jul 2016 13:16:47 -0400 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.28,363,1464678000"; d="scan'208";a="1021808996" Date: Thu, 14 Jul 2016 10:16:45 -0700 From: "Luck, Tony" To: Thomas Gleixner Cc: Fenghua Yu , Ingo Molnar , "H. Peter Anvin" , Tejun Heo , Borislav Petkov , Stephane Eranian , Peter Zijlstra , Marcelo Tosatti , David Carrillo-Cisneros , Ravi V Shankar , Vikas Shivappa , Sai Prakhya , linux-kernel , x86 Subject: Re: [PATCH 13/32] Documentation, x86: Documentation for Intel resource allocation user interface Message-ID: <20160714171645.GA19191@intel.com> References: <1468371785-53231-1-git-send-email-fenghua.yu@intel.com> <1468371785-53231-14-git-send-email-fenghua.yu@intel.com> <20160713171310.GA14521@intel.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, Jul 14, 2016 at 08:53:17AM +0200, Thomas Gleixner wrote: > > Happy to take suggestions for something in between those > > extremes :-) > > I'd suggest "resctrl" and the abbreviation dictionaries tell me that the most > common ones for resource are: R, RESORC, RES OK. "resctrl" it is. > As a side effect that avoids the whole 'find all tasks' on mount machinery > simply because the CPU defaults do not change at all. That's a very good side effect. It just means that the "tasks" file in the root of the hierachy will need different read/write functions from those in sub-directories. read: scan all tasks, print pid for ones with task->rdtgroup == NULL write: remove task from the rdtgroup list that it was on; set task->rdtgroup = NULL; > It covers almost everything except the case I outlined before: > > Isolated CPU Important Task runs on isolated CPU > 5% exclusive cache 10% exclusive cache > > That's impossible with your scheme, but it's something which matters. You want > to make sure that the system services on that isolated CPU stay cache hot > without hurting the cache locality of your isolated task. So the core part of __intel_rdt_sched_in() will look like: /* * Precedence rules: * Processes assigned to an rdtgroup use that group * wherever they run. If they don't have an rdtgroup * we see if the current cpu has one and use it. * If no specific rdtgroup was provided, we use the * root_rdtgroup */ rdtgrp = current->rdtgroup; if (!rdtgrp) { rdtgrp = per_cpu(cpu_rdtgroup, cpu); if (!rdtgrp) rdtgrp = root_rdtgroup; } > > Otherwise we can revise the documentation to explain all this better. > > That needs to be done in any case. The existing one does not really qualify as > proper documentation. It's closer to a fairy tale :) Yes. We will re-write. -Tony