• Matthew Brost's avatar
    drm/xe/migrate: Update emit_pte to cope with a size level than 4k · e89b384c
    Matthew Brost authored
    emit_pte assumes the size argument is 4k aligned, this may not be true
    for the PTEs emitted for CSS as seen by below call stack:
    
    [   56.734228] xe_migrate_copy:585: size=327680, ccs_start=327680, css_size=1280,4096
    [   56.734250] xe_migrate_copy:643: size=262144
    [   56.734252] emit_pte:404: ptes=64
    [   56.734255] emit_pte:418: chunk=64
    [   56.734257] xe_migrate_copy:650: size=1024	@ CCS emit PTE
    [   56.734259] emit_pte:404: ptes=1
    [   56.734261] emit_pte:418: chunk=1
    [   56.734339] xe_migrate_copy:643: size=65536
    [   56.734342] emit_pte:404: ptes=16
    [   56.734344] emit_pte:418: chunk=16
    [   56.734346] xe_migrate_copy:650: size=256	# CCS emit PTE
    [   56.734348] emit_pte:404: ptes=1
    [   56.734350] emit_pte:418: chunk=1
    [   56.734352] xe_res_next:174: size=4096, remaining=0
    
    Update emit_pte to handle sizes less than 4k.
    Signed-off-by: default avatarMatthew Brost <matthew.brost@intel.com>
    Reviewed-by: default avatarThomas Hellström <thomas.hellstrom@linux.intel.com>
    Signed-off-by: default avatarRodrigo Vivi <rodrigo.vivi@intel.com>
    e89b384c
xe_migrate.c 33.2 KB