Intel-XE Archive on lore.kernel.org
 help / color / mirror / Atom feed
From: "Souza, Jose" <jose.souza@intel.com>
To: "Dixit, Ashutosh" <ashutosh.dixit@intel.com>,
	"intel-xe@lists.freedesktop.org" <intel-xe@lists.freedesktop.org>,
	"Landwerlin, Lionel G" <lionel.g.landwerlin@intel.com>
Subject: Re: [PATCH 00/17] Add OA functionality to Xe
Date: Fri, 17 May 2024 18:42:39 +0000	[thread overview]
Message-ID: <438b276a653bf56fe1e0e131709d615dec86ae3e.camel@intel.com> (raw)
In-Reply-To: <20240315013518.2848986-1-ashutosh.dixit@intel.com>

On Thu, 2024-03-14 at 18:35 -0700, Ashutosh Dixit wrote:
> Please see cover letter for v7 here:
> https://patchwork.freedesktop.org/series/121084/#rev7
> 
> For changes in v8 through v10, see:
> https://patchwork.freedesktop.org/series/128993/
> 
> For changes in v11, see:
> https://patchwork.freedesktop.org/series/130705/
> 
> This series is also available at:
>         https://gitlab.freedesktop.org/adixit/kernel/-/tree/xe-oa
> 
> The series has been tested against this IGT series:
>         https://gitlab.freedesktop.org/adixit/igt-gpu-tools/-/tree/xe-oa, or,
> 	https://patchwork.freedesktop.org/series/130033/
> 
> v2: Fix build
> v3: Rebase, due to s/xe_engine/xe_exec_queue/
> v4: Re-run for testing
> v5: Address review comments, new patches 11 through 17
> v6: New patches 18 through 21
> v7: Patches are completely redone and don't start with i915 version of the uapi
> v8: See https://patchwork.freedesktop.org/patch/575214/?series=128993&rev=1
> v9: See https://patchwork.freedesktop.org/patch/577441/?series=128993&rev=2
> v10: See https://patchwork.freedesktop.org/patch/577943/?series=128993&rev=3
> v11: See https://patchwork.freedesktop.org/patch/581239/?series=130705&rev=1
> v12: Add last two new patches to enable Xe2+ overrun mode
> v13: Update last two patches after code review completion

Hi

I hope I'm replying to the latest version...

Just a few comments I have in the uAPI:

- Rename DRM_XE_OA_PROPERTY_OA_EXPONENT to DRM_XE_OA_PROPERTY_OA_PERIOD_EXPONENT, for better clarity.
- Some Perf uAPIs added here don't have usage in Mesa, see those below. Not sure if MDAPI or gviz will make use of it, if not the approach is to
remove uAPIs until there is UMD using it:
	- DRM_XE_PERF_IOCTL_INFO + drm_xe_oa_stream_info
	- DRM_XE_DEVICE_QUERY_OA_UNITS + drm_xe_query_oa_units + drm_xe_oa_unit
- DRM_XE_OASTATUS_* values are based on HW definition, I think it should not follow HW at least for DRM_XE_OASTATUS_MMIO_TRG_Q_FULL and avoid have a
blank space of bits not used in the uAPI
- Perf stream read() should give us a hint that drm_xe_oa_stream_status needs to be read, that discussion is already in progress thank you for that

Other than that the uAPI LGTM.

There is the hold_preemption feature that is missing but I think that can be added later...

thank you

> 
> Ashutosh Dixit (17):
>   drm/xe/perf/uapi: "Perf" layer to support multiple perf counter stream
>     types
>   drm/xe/perf/uapi: Add perf_stream_paranoid sysctl
>   drm/xe/oa/uapi: Add OA data formats
>   drm/xe/oa/uapi: Initialize OA units
>   drm/xe/oa/uapi: Add/remove OA config perf ops
>   drm/xe/oa/uapi: Define and parse OA stream properties
>   drm/xe/oa: OA stream initialization (OAG)
>   drm/xe/oa/uapi: Expose OA stream fd
>   drm/xe/oa/uapi: Read file_operation
>   drm/xe/oa: Add OAR support
>   drm/xe/oa: Add OAC support
>   drm/xe/oa/uapi: Query OA unit properties
>   drm/xe/oa/uapi: OA buffer mmap
>   drm/xe/oa: Add MMIO trigger support
>   drm/xe/oa: Override GuC RC with OA on PVC
>   drm/xe/oa: Changes to OA_TAKEN
>   drm/xe/oa: Enable Xe2+ overrun mode
> 
>  drivers/gpu/drm/xe/Makefile                   |    2 +
>  .../gpu/drm/xe/instructions/xe_mi_commands.h  |    3 +
>  drivers/gpu/drm/xe/regs/xe_engine_regs.h      |    4 +-
>  drivers/gpu/drm/xe/regs/xe_gt_regs.h          |    3 +
>  drivers/gpu/drm/xe/regs/xe_oa_regs.h          |   99 +
>  drivers/gpu/drm/xe/xe_device.c                |   18 +-
>  drivers/gpu/drm/xe/xe_device_types.h          |    4 +
>  drivers/gpu/drm/xe/xe_gt_types.h              |    4 +
>  drivers/gpu/drm/xe/xe_guc_pc.c                |   56 +
>  drivers/gpu/drm/xe/xe_guc_pc.h                |    3 +
>  drivers/gpu/drm/xe/xe_hw_engine_types.h       |    2 +
>  drivers/gpu/drm/xe/xe_lrc.c                   |   11 +-
>  drivers/gpu/drm/xe/xe_lrc.h                   |    1 +
>  drivers/gpu/drm/xe/xe_module.c                |    6 +
>  drivers/gpu/drm/xe/xe_oa.c                    | 2334 +++++++++++++++++
>  drivers/gpu/drm/xe/xe_oa.h                    |   30 +
>  drivers/gpu/drm/xe/xe_oa_types.h              |  229 ++
>  drivers/gpu/drm/xe/xe_perf.c                  |   67 +
>  drivers/gpu/drm/xe/xe_perf.h                  |   20 +
>  drivers/gpu/drm/xe/xe_query.c                 |   77 +
>  drivers/gpu/drm/xe/xe_reg_whitelist.c         |   24 +-
>  include/uapi/drm/xe_drm.h                     |  286 ++
>  22 files changed, 3275 insertions(+), 8 deletions(-)
>  create mode 100644 drivers/gpu/drm/xe/regs/xe_oa_regs.h
>  create mode 100644 drivers/gpu/drm/xe/xe_oa.c
>  create mode 100644 drivers/gpu/drm/xe/xe_oa.h
>  create mode 100644 drivers/gpu/drm/xe/xe_oa_types.h
>  create mode 100644 drivers/gpu/drm/xe/xe_perf.c
>  create mode 100644 drivers/gpu/drm/xe/xe_perf.h
> 


  parent reply	other threads:[~2024-05-17 18:42 UTC|newest]

Thread overview: 50+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-15  1:35 [PATCH 00/17] Add OA functionality to Xe Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 01/17] drm/xe/perf/uapi: "Perf" layer to support multiple perf counter stream types Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 02/17] drm/xe/perf/uapi: Add perf_stream_paranoid sysctl Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 03/17] drm/xe/oa/uapi: Add OA data formats Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 04/17] drm/xe/oa/uapi: Initialize OA units Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 05/17] drm/xe/oa/uapi: Add/remove OA config perf ops Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 06/17] drm/xe/oa/uapi: Define and parse OA stream properties Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 07/17] drm/xe/oa: OA stream initialization (OAG) Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 08/17] drm/xe/oa/uapi: Expose OA stream fd Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 09/17] drm/xe/oa/uapi: Read file_operation Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 10/17] drm/xe/oa: Add OAR support Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 11/17] drm/xe/oa: Add OAC support Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 12/17] drm/xe/oa/uapi: Query OA unit properties Ashutosh Dixit
2024-04-24 23:26   ` Dixit, Ashutosh
2024-04-25 13:10     ` Lucas De Marchi
2024-03-15  1:35 ` [PATCH 13/17] drm/xe/oa/uapi: OA buffer mmap Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 14/17] drm/xe/oa: Add MMIO trigger support Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 15/17] drm/xe/oa: Override GuC RC with OA on PVC Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 16/17] drm/xe/oa: Changes to OA_TAKEN Ashutosh Dixit
2024-03-15  1:35 ` [PATCH 17/17] drm/xe/oa: Enable Xe2+ overrun mode Ashutosh Dixit
2024-03-15  1:53 ` ✓ CI.Patch_applied: success for Add OA functionality to Xe (rev13) Patchwork
2024-03-15  1:53 ` ✗ CI.checkpatch: warning " Patchwork
2024-03-15  1:54 ` ✓ CI.KUnit: success " Patchwork
2024-03-15  2:05 ` ✓ CI.Build: " Patchwork
2024-03-15  2:07 ` ✗ CI.Hooks: failure " Patchwork
2024-03-15  2:08 ` ✓ CI.checksparse: success " Patchwork
2024-03-15  2:34 ` ✓ CI.BAT: " Patchwork
2024-05-17 18:42 ` Souza, Jose [this message]
2024-05-18  1:42   ` [PATCH 00/17] Add OA functionality to Xe Dixit, Ashutosh
2024-05-21 14:43     ` Souza, Jose
2024-05-21 14:47       ` Souza, Jose
2024-05-21 16:10         ` Dixit, Ashutosh
2024-05-21 16:29           ` Souza, Jose
2024-05-21 16:43             ` Dixit, Ashutosh
2024-05-21 17:39               ` Souza, Jose
2024-05-21 18:02                 ` Dixit, Ashutosh
2024-05-21 18:11                   ` Dixit, Ashutosh
2024-05-21 19:01                     ` Souza, Jose
2024-05-21 18:48                   ` Souza, Jose
2024-05-21 20:24                     ` Dixit, Ashutosh
2024-05-21 21:00                       ` Souza, Jose
2024-05-22  2:28                         ` Dixit, Ashutosh
2024-05-22 16:08                           ` Souza, Jose
2024-05-22  4:42             ` Dixit, Ashutosh
2024-05-22 16:13               ` Souza, Jose
2024-05-22 18:50                 ` Dixit, Ashutosh
2024-05-22 19:30                   ` Souza, Jose
2024-05-25  1:16                     ` Dixit, Ashutosh
2024-05-27 17:02                       ` Souza, Jose
2024-05-21 19:58 ` Souza, Jose

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=438b276a653bf56fe1e0e131709d615dec86ae3e.camel@intel.com \
    --to=jose.souza@intel.com \
    --cc=ashutosh.dixit@intel.com \
    --cc=intel-xe@lists.freedesktop.org \
    --cc=lionel.g.landwerlin@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox