mbox series

[SRU,F,G,00/26] drm/i915: Backport support for VK_INTEL_performance_query extension

Message ID 20200505083239.2428948-1-tjaalton@ubuntu.com
Headers show
Series drm/i915: Backport support for VK_INTEL_performance_query extension | expand

Message

Timo Aaltonen May 5, 2020, 8:32 a.m. UTC
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

Comments

Stefan Bader May 6, 2020, 9:18 a.m. UTC | #1
On 05.05.20 10:32, Timo Aaltonen wrote:
> 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.
>

This is not fixing any problem. And just for the sake of allowing to extract
performance data I see no reason to make such a big change to a stable kernel.

-Stefan

> 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
>
Paolo Pisati May 12, 2020, 2:34 p.m. UTC | #2
On Tue, May 05, 2020 at 11:32:13AM +0300, Timo Aaltonen wrote:
> BugLink: https://bugs.launchpad.net/bugs/1871957

Unstable/Groovy is already 5.7 and you say this is a backport from 5.5: am i
correctly assuming we are already good in Unstable and no patches need to be
applied, right?