Re: [PATCH v2 3/3] drm/ttm: Update the struct ttm_operation_ctx kerneldoc

Maarten Lankhorst
2026-03-18T11:48:58Z

Reviewed-by: Maarten Lankhorst <dev@lankhorst.se>

Den 2026-03-17 kl. 15:18, skrev Thomas Hellström:
> Update the kerneldoc with a more elaborate description of some members,
> including the gfp_retry_mayfail member. Use inline kerneldoc.
>
> Suggested-by: Simona Vetter <simona.vetter@ffwll.ch>
> Signed-off-by: Thomas Hellström <thomas.hellstrom@linux.intel.com>
> ---
> include/drm/ttm/ttm_bo.h | 28 +++++++++++++++++++---------
> 1 file changed, 19 insertions(+), 9 deletions(-)
>
> diff --git a/include/drm/ttm/ttm_bo.h b/include/drm/ttm/ttm_bo.h
> index bca3a8849d47..8310bc3d55f9 100644
> --- a/include/drm/ttm/ttm_bo.h
> +++ b/include/drm/ttm/ttm_bo.h
> @@ -167,24 +167,34 @@ struct ttm_bo_kmap_obj {
> /**
> * struct ttm_operation_ctx
> *
> - * @interruptible: Sleep interruptible if sleeping.
> - * @no_wait_gpu: Return immediately if the GPU is busy.
> - * @gfp_retry_mayfail: Set the __GFP_RETRY_MAYFAIL when allocation pages.
> - * @allow_res_evict: Allow eviction of reserved BOs. Can be used when multiple
> - * BOs share the same reservation object.
> - * faults. Should only be used by TTM internally.
> - * @resv: Reservation object to allow reserved evictions with.
> - * @bytes_moved: Statistics on how many bytes have been moved.
> - *
> * Context for TTM operations like changing buffer placement or general memory
> * allocation.
> */
> struct ttm_operation_ctx {
> + /** @interruptible: Sleep interruptible if sleeping. */
> bool interruptible;
> + /** @no_wait_gpu: Return immediately if the GPU is busy. */
> bool no_wait_gpu;
> + /**
> + * @gfp_retry_mayfail: Use __GFP_RETRY_MAYFAIL | __GFP_NOWARN
> + * when allocation pages. This is to avoid invoking the OOM
> + * killer when populating a buffer object, in order to
> + * forward the error for it to be dealt with.
> + */
> bool gfp_retry_mayfail;
> + /**
> + * @allow_res_evict: Allow eviction of reserved BOs. Can be used
> + * when multiple BOs share the same reservation object @resv.
> + */
> bool allow_res_evict;
> + /**
> + * @resv: Reservation object to be used together with
> + * @allow_res_evict.
> + */
> struct dma_resv *resv;
> + /**
> + * @bytes_moved: Statistics on how many bytes have been moved.
> + */
> uint64_t bytes_moved;
> };
>