On Fri, 4 Apr 2025 11:26:30 +0200 Boris Brezillon <boris.brezil...@collabora.com> wrote:
> diff --git a/include/uapi/drm/panthor_drm.h b/include/uapi/drm/panthor_drm.h > index 97e2c4510e69..8071f1c438e2 100644 > --- a/include/uapi/drm/panthor_drm.h > +++ b/include/uapi/drm/panthor_drm.h > @@ -615,6 +615,16 @@ struct drm_panthor_vm_get_state { > enum drm_panthor_bo_flags { > /** @DRM_PANTHOR_BO_NO_MMAP: The buffer object will never be CPU-mapped > in userspace. */ > DRM_PANTHOR_BO_NO_MMAP = (1 << 0), > + > + /** > + * @DRM_PANTHOR_BO_ALLOC_ON_FAULT: The buffer sections will be > allocated on-demand. > + * > + * When alloc-on-faut is used, the user should expect job failures, > because the > + * allocation happens in a path where waiting is not allowed, meaning > the allocation > + * can fail and there's nothing the kernel will do to mitigate that. > The group will > + * be unusable after such a failure. > + */ > + DRM_PANTHOR_BO_ALLOC_ON_FAULT = (1 << 1), I forgot to increment the driver version to reflect those uAPI changes. Will fix that in v2. > }; > > /** > @@ -649,8 +659,13 @@ struct drm_panthor_bo_create { > */ > __u32 handle; > > - /** @pad: MBZ. */ > - __u32 pad; > + /** > + * @alloc_on_fault_granularity: Granularity of the alloc-on-fault > behavior. > + * > + * Must be zero when DRM_PANTHOR_BO_ALLOC_ON_FAULT is not set. > + * Must be a power-of-two, at least a page size, and less or equal to > @size. > + */ > + __u32 alloc_on_faut_granularity; > }; > > /**