[PATCH v10 1/4] drm/xe/vf: Divide GGTT ballooning into allocation and insertion
Michal Wajdeczko
michal.wajdeczko at intel.com
Thu Apr 17 18:10:57 UTC 2025
On 16.04.2025 00:20, Tomasz Lis wrote:
> The balloon nodes, which are used to fill areas of GGTT inaccessible
> for a specific VF, were allocated and inserted into GGTT within one
> function. To be able to re-use that insertion code during VF
> migration recovery, we need to split it.
>
> This patch separates allocation (init/fini functs) from the insertion
> of balloons (balloon/deballoon functs). Locks are also moved to ensure
> calls from post-migration recovery worker will not cause a deadlock.
>
> v2: Moved declarations to proper header
> v3: Rephrased description, introduced "_locked" versions of some
> functs, more lockdep checks, some functions renamed, altered error
> handling, added missing kerneldocs.
> v4: Suffixed more functs with `_locked`, moved lockdep asserts,
> fixed finalization in error path, added asserts
> v5: Renamed another few functs, used xe_ggtt_node_allocated(),
> moved lockdep back again to avoid null dereference, added
> asserts, improved comments
> v6: Changed params of cleanup_ggtt()
>
> Signed-off-by: Tomasz Lis <tomasz.lis at intel.com>
> Cc: Michal Wajdeczko <michal.wajdeczko at intel.com>
> ---
hmm, still not 100% happy with all this gt<->tile dance that seems to be
unavoidable right now, likely we need to do little refactor and move
some stuff to xe_tile_sriov_vf.* files, but that's really not your
fault, so let this is in as-is and try to cleanup later,
Reviewed-by: Michal Wajdeczko <michal.wajdeczko at intel.com>
More information about the Intel-xe
mailing list