mirror of
https://github.com/torvalds/linux.git
synced 2026-11-07 06:17:02 +01:00
drm/xe: Enter ULLS for migration jobs upon page fault or SVM prefetch
Call xe_migrate_ulls_enter upon page fault or SVM prefetch in an effort speed up these critical paths. Signed-off-by: Matthew Brost <matthew.brost@intel.com> Reviewed-by: Shuicheng Lin <shuicheng.lin@intel.com> Reviewed-by: Himal Prasad Ghimiray <himal.prasad.ghimiray@intel.com> Reviewed-by: Maarten Lankhorst <dev@lankhorst.se> Link: https://patch.msgid.link/20260925201526.1355279-23-matthew.brost@intel.com
This commit is contained in:
parent
40c756bdbb
commit
085d8f468f
|
|
@ -15,6 +15,7 @@
|
|||
#include "xe_gt_stats.h"
|
||||
#include "xe_hw_engine.h"
|
||||
#include "xe_log.h"
|
||||
#include "xe_migrate.h"
|
||||
#include "xe_pagefault.h"
|
||||
#include "xe_pagefault_types.h"
|
||||
#include "xe_pm.h"
|
||||
|
|
@ -281,6 +282,8 @@ static int xe_pagefault_service(struct xe_pagefault *pf)
|
|||
if (IS_ERR(vm))
|
||||
return PTR_ERR(vm);
|
||||
|
||||
xe_migrate_ulls_enter(gt_to_tile(gt)->migrate);
|
||||
|
||||
down_read(&vm->lock);
|
||||
|
||||
if (xe_vm_is_closed(vm)) {
|
||||
|
|
|
|||
|
|
@ -2528,8 +2528,10 @@ vm_bind_ioctl_ops_create(struct xe_vm *vm, struct xe_vma_ops *vops,
|
|||
ctx.devmem_possible = IS_DGFX(vm->xe) &&
|
||||
IS_ENABLED(CONFIG_DRM_XE_PAGEMAP);
|
||||
|
||||
for_each_tile(tile, vm->xe, id)
|
||||
for_each_tile(tile, vm->xe, id) {
|
||||
xe_migrate_ulls_enter(tile->migrate);
|
||||
tile_mask |= 0x1 << id;
|
||||
}
|
||||
|
||||
if (prefetch_region == DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC) {
|
||||
dpagemap = xe_vma_resolve_pagemap(vma,
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user