Received: by 10.223.176.46 with SMTP id f43csp1276189wra; Fri, 19 Jan 2018 09:12:39 -0800 (PST) X-Google-Smtp-Source: ACJfBovS30otsfCxM+5NCjY9QhC1ZUOhGw6upD6C+4hjzUfGKgzNKJgBcHQTk2QMUYcOh0osxFSK X-Received: by 10.98.11.218 with SMTP id 87mr12758298pfl.99.1516381959836; Fri, 19 Jan 2018 09:12:39 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1516381959; cv=none; d=google.com; s=arc-20160816; b=gtdYZgZXD+8oEf1W2DeP7Vree/EEtV4NYMGyp1nJ9csB4E1ODnmE64ZfZoLXcAna3J gcKIgm3dLeOqC2vFijUvIJGzgvJKCUdgjqvdRWBQznGrJ1CZgZ9g1bYb1fyJjsKkE7LE tZwXFRPF8oUgDko/05/nJSKEDDnhmHdPwMyxsubhOtbXgHJMByG6TBjXqq2U9AFolu6s k7uD6V+D41xAhAFTbUytUXUv4PVQK51c4bLVC0GZdRp6UqEylauYHpIZF+5N37259zzU 0Qob9LCBsfzdmY0Sjv0dLYleSQQgFPVTZO4TIoabhCRMrRwukTCa5ys/CVEv8xACINh+ XlqQ== 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 :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:arc-authentication-results; bh=QaFcmLrqXMILMsNaFQHOSxKkSQnaZvdrm/fpEdtvglY=; b=PJMjPXLd2QRRvyKF4I6kHeBh4Q5v1IrtkIIDiFDPAvnjNYdvV+jOSuJCpSHWDhogIz zSt4OKfPhge2OLv2/cFHPtsu834la3bEea8eucg9p/tEzHWkkSpzbUThAbJgDEb/B9Jr 6rcP4DIHTHOI3M5kHsp6ZWxINQb5vHu2iy1FWuJaYj4A6FUstKKprd62mZbjDFglqek2 dnTKXDAj7NWRF9i4cGzesKSPdzEdwNhDpU4tzfrLSzIbbtzPxDMn6T6wEC9oM5qWoQoG jNSy2piarIokP8pqDrNtsJfbIa/Q/jI3cAi0kSkK2FCUjq78BkVSGouL6l/1dTS39NVE jtiA== 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 3si9659358pfi.416.2018.01.19.09.12.25; Fri, 19 Jan 2018 09:12:39 -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 S1756103AbeASRK3 (ORCPT + 99 others); Fri, 19 Jan 2018 12:10:29 -0500 Received: from mga14.intel.com ([192.55.52.115]:32804 "EHLO mga14.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755809AbeASRKX (ORCPT ); Fri, 19 Jan 2018 12:10:23 -0500 X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 19 Jan 2018 09:10:23 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.46,382,1511856000"; d="scan'208";a="23782796" Received: from tursulin-mobl.ger.corp.intel.com (HELO [10.252.20.82]) ([10.252.20.82]) by fmsmga001.fm.intel.com with ESMTP; 19 Jan 2018 09:10:21 -0800 Subject: Re: [Intel-gfx] [RFC] perf: Allow fine-grained PMU access control To: Peter Zijlstra , Tvrtko Ursulin Cc: Alexander Shishkin , Intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, Arnaldo Carvalho de Melo , Ingo Molnar , Namhyung Kim , Jiri Olsa References: <20180118184007.1300-1-tvrtko.ursulin@linux.intel.com> <20180119164540.GT2228@hirez.programming.kicks-ass.net> From: Tvrtko Ursulin Message-ID: <1074f5d5-dab4-dd62-6894-38676721491d@linux.intel.com> Date: Fri, 19 Jan 2018 17:10:20 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.2 MIME-Version: 1.0 In-Reply-To: <20180119164540.GT2228@hirez.programming.kicks-ass.net> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-GB Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, On 19/01/2018 16:45, Peter Zijlstra wrote: > On Thu, Jan 18, 2018 at 06:40:07PM +0000, Tvrtko Ursulin wrote: >> From: Tvrtko Ursulin >> >> For situations where sysadmins might want to allow different level of >> of access control for different PMUs, we start creating per-PMU >> perf_event_paranoid controls in sysfs. > > You've completely and utterly failed to explain why. On an abstract level, if there is a desire to decrease the security knob on one particular PMU provider, it is better to be able to do it just for the one, rather for the whole system. On a more concrete level, we have customers who want to look at certain i915 metrics, most probably engine utilization or queue depth, in order to make load-balancing decisions. (The two would be roughly analogous to CPU usage and load.) This data needs to be available to their userspaces dynamically and would be used to pick a best GPU engine (mostly analogous to a CPU core) to run a particular packet of work. It would be impossible to run their product as root, and while one option could be to write a proxy daemon which would allow unprivileged queries, it is also a significant complication which introduces a time shift problem on the PMU data as well. So my thinking was that a per-PMU paranoid control should not be a problematic concept in general. And my gut feeling anyway was that not all PMU providers are the same class data, security wise, which was another reason I thought per-PMU controls would be fine. There is one more way of thinking about it, and that is that the access control could even be extended to be per-event, and not just per-PMU. That would allow registered PMUs to let the core know which counters are potentially security sensitive, and which are not. I've sent another RFC along those lines some time ago, but afterwards I've changed my mind and thought the approach from this patch should be less controversial since it retains all control fully in the perf core and in the hands of sysadmins. Regards, Tvrtko