History

Merge branch 'kbuild-6.19.fms.extension'

Bring in the shared branch with the kbuild tree to enable '-fms-extensions' for 6.19. Further namespace cleanup work requires this extension.

Christian Brauner committed 1 year ago

Commit a67ee4e2 parents ae901e5 3c60b0b269 files · +2610 −1565Browse files

Showing the changes to include/uapi (1 of 269 files). Show all

Unified · Split

include/uapi/drm/xe_drm.h+15−0
@@ -1013,6 +1013,20 @@ struct drm_xe_vm_destroy { · 1012 unmodified lines
10131013 * valid on VMs with DRM_XE_VM_CREATE_FLAG_FAULT_MODE set. The CPU address
10141014 * mirror flag are only valid for DRM_XE_VM_BIND_OP_MAP operations, the BO
10151015 * handle MBZ, and the BO offset MBZ.
1016+ * - %DRM_XE_VM_BIND_FLAG_MADVISE_AUTORESET - Can be used in combination with
1017+ * %DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR to reset madvises when the underlying
1018+ * CPU address space range is unmapped (typically with munmap(2) or brk(2)).
1019+ * The madvise values set with &DRM_IOCTL_XE_MADVISE are reset to the values
1020+ * that were present immediately after the &DRM_IOCTL_XE_VM_BIND.
1021+ * The reset GPU virtual address range is the intersection of the range bound
1022+ * using &DRM_IOCTL_XE_VM_BIND and the virtual CPU address space range
1023+ * unmapped.
1024+ * This functionality is present to mimic the behaviour of CPU address space
1025+ * madvises set using madvise(2), which are typically reset on unmap.
1026+ * Note: free(3) may or may not call munmap(2) and/or brk(2), and may thus
1027+ * not invoke autoreset. Neither will stack variables going out of scope.
1028+ * Therefore it's recommended to always explicitly reset the madvises when
1029+ * freeing the memory backing a region used in a &DRM_IOCTL_XE_MADVISE call.
10161030 *
10171031 * The @prefetch_mem_region_instance for %DRM_XE_VM_BIND_OP_PREFETCH can also be:
10181032 * - %DRM_XE_CONSULT_MEM_ADVISE_PREF_LOC, which ensures prefetching occurs in
@@ -1119,6 +1133,7 @@ struct drm_xe_vm_bind_op { · 100 unmodified lines
11191133 #define DRM_XE_VM_BIND_FLAG_DUMPABLE (1 << 3)
11201134 #define DRM_XE_VM_BIND_FLAG_CHECK_PXP (1 << 4)
11211135 #define DRM_XE_VM_BIND_FLAG_CPU_ADDR_MIRROR (1 << 5)
1136+#define DRM_XE_VM_BIND_FLAG_MADVISE_AUTORESET (1 << 6)
11221137 /** @flags: Bind flags */
11231138 __u32 flags;
11241139