Message ID | 20180928232126.4332-3-eric@anholt.net (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | [1/4] drm/v3d: Fix a use-after-free race accessing the scheduler's fences. | expand |
On Fri, 28 Sep 2018 16:21:25 -0700 Eric Anholt <eric@anholt.net> wrote: > Since this is UAPI, it's good to document what exactly the guarantees > we're providing are. > > Signed-off-by: Eric Anholt <eric@anholt.net> Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com> > --- > include/uapi/drm/v3d_drm.h | 10 ++++++++++ > 1 file changed, 10 insertions(+) > > diff --git a/include/uapi/drm/v3d_drm.h b/include/uapi/drm/v3d_drm.h > index 7b6627783608..f446656d00b1 100644 > --- a/include/uapi/drm/v3d_drm.h > +++ b/include/uapi/drm/v3d_drm.h > @@ -58,6 +58,11 @@ struct drm_v3d_submit_cl { > * coordinate shader to determine where primitives land on the screen, > * then writes out the state updates and draw calls necessary per tile > * to the tile allocation BO. > + * > + * This BCL will block on any previous BCL submitted on the > + * same FD, but not on any RCL or BCLs submitted by other > + * clients -- that is left up to the submitter to control > + * using in_sync_bcl if necessary. > */ > __u32 bcl_start; > > @@ -69,6 +74,11 @@ struct drm_v3d_submit_cl { > * This is the second set of commands executed, which will either > * execute the tiles that have been set up by the BCL, or a fixed set > * of tiles (in the case of RCL-only blits). > + * > + * This RCL will block on this submit's BCL, and any previous > + * RCL submitted on the same FD, but not on any RCL or BCLs > + * submitted by other clients -- that is left up to the > + * submitter to control using in_sync_rcl if necessary. > */ > __u32 rcl_start; >
diff --git a/include/uapi/drm/v3d_drm.h b/include/uapi/drm/v3d_drm.h index 7b6627783608..f446656d00b1 100644 --- a/include/uapi/drm/v3d_drm.h +++ b/include/uapi/drm/v3d_drm.h @@ -58,6 +58,11 @@ struct drm_v3d_submit_cl { * coordinate shader to determine where primitives land on the screen, * then writes out the state updates and draw calls necessary per tile * to the tile allocation BO. + * + * This BCL will block on any previous BCL submitted on the + * same FD, but not on any RCL or BCLs submitted by other + * clients -- that is left up to the submitter to control + * using in_sync_bcl if necessary. */ __u32 bcl_start; @@ -69,6 +74,11 @@ struct drm_v3d_submit_cl { * This is the second set of commands executed, which will either * execute the tiles that have been set up by the BCL, or a fixed set * of tiles (in the case of RCL-only blits). + * + * This RCL will block on this submit's BCL, and any previous + * RCL submitted on the same FD, but not on any RCL or BCLs + * submitted by other clients -- that is left up to the + * submitter to control using in_sync_rcl if necessary. */ __u32 rcl_start;
Since this is UAPI, it's good to document what exactly the guarantees we're providing are. Signed-off-by: Eric Anholt <eric@anholt.net> --- include/uapi/drm/v3d_drm.h | 10 ++++++++++ 1 file changed, 10 insertions(+)