[PATCH v4 6/6] drm/xe/pf: Invalidate LMTT after completing changes
Piotr Piórkowski
piotr.piorkowski at intel.com
Tue Jul 15 07:19:58 UTC 2025
Michal Wajdeczko <michal.wajdeczko at intel.com> wrote on pią [2025-lip-11 21:33:16 +0200]:
> Once we finish populating all leaf pages in the VF's LMTT we should
> make sure that hardware will not access any stale data. Explicitly
> force LMTT invalidation (as it was already planned in the past).
>
> Signed-off-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
> Cc: Michał Winiarski <michal.winiarski at intel.com>
> Cc: Piotr Piórkowski <piotr.piorkowski at intel.com>
> ---
> drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c | 12 +++++++++++-
> 1 file changed, 11 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> index 86dade6f1083..0e1c1c19e011 100644
> --- a/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> +++ b/drivers/gpu/drm/xe/xe_gt_sriov_pf_config.c
> @@ -1347,7 +1347,17 @@ static int pf_distribute_config_lmem(struct xe_gt *gt, unsigned int vfid, u64 si
>
> static void pf_force_lmtt_invalidate(struct xe_device *xe)
> {
> - /* TODO */
> + struct xe_lmtt *lmtt;
> + struct xe_tile *tile;
> + unsigned int tid;
> +
> + xe_assert(xe, xe_device_has_lmtt(xe));
> + xe_assert(xe, IS_SRIOV_PF(xe));
> +
> + for_each_tile(tile, xe, tid) {
> + lmtt = &tile->sriov.pf.lmtt;
> + xe_lmtt_invalidate_hw(lmtt);
> + }
> }
LGTM:
Reviewed-by: Piotr Piórkowski <piotr.piorkowski at intel.com>
>
> static void pf_reset_vf_lmtt(struct xe_device *xe, unsigned int vfid)
> --
> 2.47.1
>
--
More information about the Intel-xe
mailing list