From patchwork Tue May 5 08:32:13 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Timo Aaltonen X-Patchwork-Id: 1283325 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.ubuntu.com (client-ip=91.189.94.19; helo=huckleberry.canonical.com; envelope-from=kernel-team-bounces@lists.ubuntu.com; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=ubuntu.com Received: from huckleberry.canonical.com (huckleberry.canonical.com [91.189.94.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49GXzP4Ykcz9sP7; Tue, 5 May 2020 18:32:49 +1000 (AEST) Received: from localhost ([127.0.0.1] helo=huckleberry.canonical.com) by huckleberry.canonical.com with esmtp (Exim 4.86_2) (envelope-from ) id 1jVt0M-0003Kb-2f; Tue, 05 May 2020 08:32:42 +0000 Received: from youngberry.canonical.com ([91.189.89.112]) by huckleberry.canonical.com with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1jVt0L-0003K3-43 for kernel-team@lists.ubuntu.com; Tue, 05 May 2020 08:32:41 +0000 Received: from [192.194.81.50] (helo=leon.tyrell) by youngberry.canonical.com with esmtpsa (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.86_2) (envelope-from ) id 1jVt0K-0004sj-PG for kernel-team@lists.ubuntu.com; Tue, 05 May 2020 08:32:40 +0000 From: Timo Aaltonen To: kernel-team@lists.ubuntu.com Subject: [SRU][F][G] [PATCH 00/26] drm/i915: Backport support for VK_INTEL_performance_query extension Date: Tue, 5 May 2020 11:32:13 +0300 Message-Id: <20200505083239.2428948-1-tjaalton@ubuntu.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 X-BeenThere: kernel-team@lists.ubuntu.com X-Mailman-Version: 2.1.20 Precedence: list List-Id: Kernel team discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: kernel-team-bounces@lists.ubuntu.com Sender: "kernel-team" BugLink: https://bugs.launchpad.net/bugs/1871957 Hi, This backport was provided by Intel to add support for the kernel part of VK_INTEL_performance_query Vulkan extension, added upstream in v5.5. While it's 26 commits, they are fairly self-contained. Chris Wilson (9): drm/i915/perf: Assert locking for i915_init_oa_perf_state() drm/i915/perf: Wean ourselves off dev_priv drm/i915/perf: Store shortcut to intel_uncore drm/i915/perf: Replace global wakeref tracking with engine-pm drm/i915/perf: Prefer using the pinned_ctx for emitting delays on config drm/i915/perf: Avoid polluting the i915_oa_config with error pointers drm/i915/perf: Allow dynamic reconfiguration of the OA stream drm/i915/perf: Manually acquire engine-wakeref around use of kernel_context drm/i915/perf: Reintroduce wait on OA configuration completion Lionel Landwerlin (13): drm/i915/perf: move perf types to their own header drm/i915/perf: drop list of streams drm/i915/perf: store the associated engine of a stream drm/i915/perf: allow for CS OA configs to be created lazily drm/i915/perf: implement active wait for noa configurations drm/i915/perf: execute OA configuration from command stream drm/i915/perf: introduce a versioning of the i915-perf uapi drm/i915: add support for perf configuration queries drm/i915/perf: allow holding preemption on filtered ctx drm/i915/perf: fix oa config reconfiguration drm/i915/perf: always consider holding preemption a privileged op drm/i915/perf: don't forget noa wait after oa config drm/i915/perf: Add preemption check while waiting for OA Mao Wenan (1): drm/i915/perf: drop pointless static qualifier in i915_perf_add_config_ioctl() MichaƂ Winiarski (1): drm/i915: Add definitions for MI_MATH command Michel Thierry (1): drm/i915/tgl/perf: use the same oa ctx_id format as icl Umesh Nerlige Ramappa (1): drm/i915/perf: Add helper macros for comparing with whitelisted registers drivers/gpu/drm/i915/gem/i915_gem_context.h | 18 + .../gpu/drm/i915/gem/i915_gem_context_types.h | 1 + .../gpu/drm/i915/gem/i915_gem_execbuffer.c | 3 + drivers/gpu/drm/i915/gt/intel_gpu_commands.h | 28 +- drivers/gpu/drm/i915/gt/intel_gt_pm.c | 7 +- drivers/gpu/drm/i915/gt/intel_gt_types.h | 5 + drivers/gpu/drm/i915/gt/intel_lrc.c | 10 + drivers/gpu/drm/i915/i915_debugfs.c | 32 + drivers/gpu/drm/i915/i915_drv.h | 356 +--- drivers/gpu/drm/i915/i915_getparam.c | 4 + drivers/gpu/drm/i915/i915_perf.c | 1478 +++++++++++------ drivers/gpu/drm/i915/i915_perf.h | 26 + drivers/gpu/drm/i915/i915_perf_types.h | 407 +++++ drivers/gpu/drm/i915/i915_query.c | 296 ++++ drivers/gpu/drm/i915/i915_reg.h | 8 +- .../drm/i915/selftests/i915_live_selftests.h | 1 + drivers/gpu/drm/i915/selftests/i915_perf.c | 216 +++ include/uapi/drm/i915_drm.h | 107 +- 18 files changed, 2143 insertions(+), 860 deletions(-) create mode 100644 drivers/gpu/drm/i915/i915_perf_types.h create mode 100644 drivers/gpu/drm/i915/selftests/i915_perf.c