The gem page fault is one of the outer bound protections where
we want to ensure that the hardware is in D0 before proceeding
with memory access. Let's convert it towards the xe_pm_runtime
functions directly so we can then convert the mem_access to be
inner protection only and then Kill it for good.

Signed-off-by: Rodrigo Vivi <[email protected]>
Reviewed-by: Matthew Auld <[email protected]>
---
 drivers/gpu/drm/xe/xe_bo.c | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index d7e0deb1b869..7ee4406da127 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -22,6 +22,7 @@
 #include "xe_gt.h"
 #include "xe_map.h"
 #include "xe_migrate.h"
+#include "xe_pm.h"
 #include "xe_preempt_fence.h"
 #include "xe_res_cursor.h"
 #include "xe_trace.h"
@@ -1107,7 +1108,7 @@ static vm_fault_t xe_gem_fault(struct vm_fault *vmf)
        int idx;
 
        if (needs_rpm)
-               xe_device_mem_access_get(xe);
+               xe_pm_runtime_get(xe);
 
        ret = ttm_bo_vm_reserve(tbo, vmf);
        if (ret)
@@ -1138,7 +1139,7 @@ static vm_fault_t xe_gem_fault(struct vm_fault *vmf)
        dma_resv_unlock(tbo->base.resv);
 out:
        if (needs_rpm)
-               xe_device_mem_access_put(xe);
+               xe_pm_runtime_put(xe);
 
        return ret;
 }
-- 
2.44.0

Reply via email to