[Linaro-mm-sig] [PATCH] dma-buf/dma_resv_usage: update explicit sync documentation

Bas Nieuwenhuizen bas at basnieuwenhuizen.nl
Wed Jul 13 11:27:13 UTC 2022


With that changed

Reviewed-by: Bas Nieuwenhuizen <bas at basnieuwenhuizen.nl>

Thanks!

On Tue, Jul 12, 2022 at 3:23 PM Christian König
<christian.koenig at amd.com> wrote:
>
> Am 12.07.22 um 15:20 schrieb Alex Deucher:
> > On Tue, Jul 12, 2022 at 9:12 AM Christian König
> > <ckoenig.leichtzumerken at gmail.com> wrote:
> >> Make it clear that DMA_RESV_USAGE_BOOKMARK can be used for explicit synced
> > DMA_RESV_USAGE_BOOKKEEP?
>
> Crappy autocorrect and copy&paste. Thanks for pointing that out.
>
> Christian.
>
> >
> >> user space submissions as well and document the rules around adding the
> >> same fence with different usages.
> >>
> >> Signed-off-by: Christian König <christian.koenig at amd.com>
> >> ---
> >>   include/linux/dma-resv.h | 16 +++++++++++++---
> >>   1 file changed, 13 insertions(+), 3 deletions(-)
> >>
> >> diff --git a/include/linux/dma-resv.h b/include/linux/dma-resv.h
> >> index c8ccbc94d5d2..264e27e56dff 100644
> >> --- a/include/linux/dma-resv.h
> >> +++ b/include/linux/dma-resv.h
> >> @@ -62,6 +62,11 @@ struct dma_resv_list;
> >>    * For example when asking for WRITE fences then the KERNEL fences are returned
> >>    * as well. Similar when asked for READ fences then both WRITE and KERNEL
> >>    * fences are returned as well.
> >> + *
> >> + * Already used fences can be promoted in the sense that a fence with
> >> + * DMA_RESV_USAGE_BOOKMARK could become DMA_RESV_USAGE_READ by adding it again
> > Same here.
> >
> > With that fixed,
> > Acked-by: Alex Deucher <alexander.deucher at amd.com>
> >
> > Alex
> >
> >> + * with this usage. But fences can never be degraded in the sense that a fence
> >> + * with DMA_RESV_USAGE_WRITE could become DMA_RESV_USAGE_READ.
> >>    */
> >>   enum dma_resv_usage {
> >>          /**
> >> @@ -98,10 +103,15 @@ enum dma_resv_usage {
> >>           * @DMA_RESV_USAGE_BOOKKEEP: No implicit sync.
> >>           *
> >>           * This should be used by submissions which don't want to participate in
> >> -        * implicit synchronization.
> >> +        * any implicit synchronization.
> >> +        *
> >> +        * The most common case are preemption fences, page table updates, TLB
> >> +        * flushes as well as explicit synced user submissions.
> >>           *
> >> -        * The most common case are preemption fences as well as page table
> >> -        * updates and their TLB flushes.
> >> +        * Explicit synced user user submissions can be promoted to
> >> +        * DMA_RESV_USAGE_READ or DMA_RESV_USAGE_WRITE as needed using
> >> +        * dma_buf_import_sync_file() when implicit synchronization should
> >> +        * become necessary after initial adding of the fence.
> >>           */
> >>          DMA_RESV_USAGE_BOOKKEEP
> >>   };
> >> --
> >> 2.25.1
> >>
> >> _______________________________________________
> >> Linaro-mm-sig mailing list -- linaro-mm-sig at lists.linaro.org
> >> To unsubscribe send an email to linaro-mm-sig-leave at lists.linaro.org
>


More information about the dri-devel mailing list