[PATCH v4 2/6] drm/xe/xe_gt_pagefault: Migrate pagefault struct to header
Matthew Brost
matthew.brost at intel.com
Tue Feb 25 20:48:00 UTC 2025
On Thu, Feb 20, 2025 at 08:38:28PM +0000, Jonathan Cavitt wrote:
> Migrate the pagefault struct from xe_gt_pagefault.c to the
> xe_gt_pagefault.h header file, along with the associated enum values.
>
Let's normalize the names if moving these to a commonn header.
> Signed-off-by: Jonathan Cavitt <jonathan.cavitt at intel.com>
> ---
> drivers/gpu/drm/xe/xe_gt_pagefault.c | 27 ---------------------------
> drivers/gpu/drm/xe/xe_gt_pagefault.h | 28 ++++++++++++++++++++++++++++
> 2 files changed, 28 insertions(+), 27 deletions(-)
>
> diff --git a/drivers/gpu/drm/xe/xe_gt_pagefault.c b/drivers/gpu/drm/xe/xe_gt_pagefault.c
> index 46701ca11ce0..fe18e3ec488a 100644
> --- a/drivers/gpu/drm/xe/xe_gt_pagefault.c
> +++ b/drivers/gpu/drm/xe/xe_gt_pagefault.c
> @@ -22,33 +22,6 @@
> #include "xe_trace_bo.h"
> #include "xe_vm.h"
>
> -struct pagefault {
> - u64 page_addr;
> - u32 asid;
> - u16 pdata;
> - u8 vfid;
> - u8 access_type;
> - u8 fault_type;
> - u8 fault_level;
> - u8 engine_class;
> - u8 engine_instance;
> - u8 fault_unsuccessful;
> - bool trva_fault;
> -};
> -
> -enum access_type {
> - ACCESS_TYPE_READ = 0,
> - ACCESS_TYPE_WRITE = 1,
> - ACCESS_TYPE_ATOMIC = 2,
> - ACCESS_TYPE_RESERVED = 3,
> -};
> -
> -enum fault_type {
> - NOT_PRESENT = 0,
> - WRITE_ACCESS_VIOLATION = 1,
> - ATOMIC_ACCESS_VIOLATION = 2,
> -};
> -
> struct acc {
> u64 va_range_base;
> u32 asid;
> diff --git a/drivers/gpu/drm/xe/xe_gt_pagefault.h b/drivers/gpu/drm/xe/xe_gt_pagefault.h
> index 839c065a5e4c..e9911da5c8a7 100644
> --- a/drivers/gpu/drm/xe/xe_gt_pagefault.h
> +++ b/drivers/gpu/drm/xe/xe_gt_pagefault.h
> @@ -11,6 +11,34 @@
> struct xe_gt;
> struct xe_guc;
>
> +struct pagefault {
s/pagefault/xe_pagefault
> + u64 page_addr;
> + u32 asid;
> + u16 pdata;
> + u8 vfid;
> + u8 access_type;
> + u8 fault_type;
> + u8 fault_level;
> + u8 engine_class;
> + u8 engine_instance;
> + u8 fault_unsuccessful;
> + bool prefetch;
> + bool trva_fault;
> +};
> +
> +enum access_type {
s/access_type/xe_pagefault_access_type
> + ACCESS_TYPE_READ = 0,
s/ACCESS/XE_PAGEFAULT_ACCESS/
> + ACCESS_TYPE_WRITE = 1,
> + ACCESS_TYPE_ATOMIC = 2,
> + ACCESS_TYPE_RESERVED = 3,
> +};
> +
> +enum fault_type {
s/fault_type/xe_pagefault_type/
> + NOT_PRESENT = 0,
s/NOT_PRESENT/XE_PAGEFAULT_TYPE_NOT_PRESENT/
> + WRITE_ACCESS_VIOLATION = 1,
> + ATOMIC_ACCESS_VIOLATION = 2,
Same for these two, I think you get the idea.
Matt
> +};
> +
> int xe_gt_pagefault_init(struct xe_gt *gt);
> void xe_gt_pagefault_reset(struct xe_gt *gt);
> int xe_guc_pagefault_handler(struct xe_guc *guc, u32 *msg, u32 len);
> --
> 2.43.0
>
More information about the Intel-xe
mailing list