Re: [PATCH v3 i-g-t 1/2] drm-uapi/xe: sync with kernel header

Kamil Konieczny
2026-03-04T13:46:18Z

Hi Sobin,
On 2026-03-04 at 11:04:59 +0000, Sobin Thomas wrote:
> This commit is for sync with kernel header.
> Align with kernel commit 369cc8804985 ("drm/xe/uapi: Introduce a flag to
> disallow VM overcommit in fault mode").

Please add here, that this will also bring documentation changes
from commit dc90ead44054 ("drm/xe/uapi: update used tracking kernel-doc")

This could be done at merge, unless you will send new version.
LGTM
Reviewed-by: Kamil Konieczny <kamil.konieczny@linux.intel.com>

Regards,
Kamil

>
> Signed-off-by: Sobin Thomas <sobin.thomas@intel.com>
> ---
> include/drm-uapi/xe_drm.h | 22 +++++++++++-----------
> 1 file changed, 11 insertions(+), 11 deletions(-)
>
> diff --git a/include/drm-uapi/xe_drm.h b/include/drm-uapi/xe_drm.h
> index 077e66a68..fc71a6cd1 100644
> --- a/include/drm-uapi/xe_drm.h
> +++ b/include/drm-uapi/xe_drm.h
> @@ -3,8 +3,8 @@
> * Copyright © 2023 Intel Corporation
> */
>
> -#ifndef _UAPI_XE_DRM_H_
> -#define _UAPI_XE_DRM_H_
> +#ifndef _XE_DRM_H_
> +#define _XE_DRM_H_
>
> #include "drm.h"
>
> @@ -142,7 +142,7 @@ extern "C" {
> * redefine the interface more easily than an ever growing struct of
> * increasing complexity, and for large parts of that interface to be
> * entirely optional. The downside is more pointer chasing; chasing across
> - * the __user boundary with pointers encapsulated inside u64.
> + * the boundary with pointers encapsulated inside u64.
> *
> * Example chaining:
> *
> @@ -335,10 +335,6 @@ struct drm_xe_mem_region {
> __u64 total_size;
> /**
> * @used: Estimate of the memory used in bytes for this region.
> - *
> - * Requires CAP_PERFMON or CAP_SYS_ADMIN to get reliable
> - * accounting. Without this the value here will always equal
> - * zero.
> */
> __u64 used;
> /**
> @@ -363,9 +359,7 @@ struct drm_xe_mem_region {
> * @cpu_visible_used: Estimate of CPU visible memory used, in
> * bytes.
> *
> - * Requires CAP_PERFMON or CAP_SYS_ADMIN to get reliable
> - * accounting. Without this the value here will always equal
> - * zero. Note this is only currently tracked for
> + * Note this is only currently tracked for
> * DRM_XE_MEM_REGION_CLASS_VRAM regions (for other types the value
> * here will always be zero).
> */
> @@ -975,6 +969,11 @@ struct drm_xe_gem_mmap_offset {
> * demand when accessed, and also allows per-VM overcommit of memory.
> * The xe driver internally uses recoverable pagefaults to implement
> * this.
> + * - %DRM_XE_VM_CREATE_FLAG_NO_VM_OVERCOMMIT - Requires also
> + * DRM_XE_VM_CREATE_FLAG_FAULT_MODE. This disallows per-VM overcommit
> + * but only during a &DRM_IOCTL_XE_VM_BIND operation with the
> + * %DRM_XE_VM_BIND_FLAG_IMMEDIATE flag set. This may be useful for
> + * user-space naively probing the amount of available memory.
> */
> struct drm_xe_vm_create {
> /** @extensions: Pointer to the first extension struct, if any */
> @@ -983,6 +982,7 @@ struct drm_xe_vm_create {
> #define DRM_XE_VM_CREATE_FLAG_SCRATCH_PAGE (1 << 0)
> #define DRM_XE_VM_CREATE_FLAG_LR_MODE (1 << 1)
> #define DRM_XE_VM_CREATE_FLAG_FAULT_MODE (1 << 2)
> +#define DRM_XE_VM_CREATE_FLAG_NO_VM_OVERCOMMIT (1 << 3)
> /** @flags: Flags */
> __u32 flags;
>
> @@ -2361,4 +2361,4 @@ struct drm_xe_exec_queue_set_property {
> }
> #endif
>
> -#endif /* _UAPI_XE_DRM_H_ */
> +#endif /* _XE_DRM_H_ */
> --
> 2.52.0
>