associated with a particular command submission.
return 0;
}
-int drmBOSetStatus(int fd, drmBO *buf, uint32_t fence_class,
+int drmBOSetStatus(int fd, drmBO *buf,
uint64_t flags, uint64_t mask,
unsigned int hint,
unsigned int desired_tile_stride,
req->flags = flags;
req->handle = buf->handle;
req->hint = hint;
- req->fence_class = fence_class;
req->desired_tile_stride = desired_tile_stride;
req->tile_info = tile_info;
int drm_bo_handle_validate(struct drm_file * file_priv, uint32_t handle,
uint32_t fence_class,
- uint64_t flags, uint64_t mask, uint32_t hint,
+ uint64_t flags, uint64_t mask,
+ uint32_t hint,
+ int use_old_fence_class,
struct drm_bo_info_rep * rep,
struct drm_buffer_object **bo_rep)
{
bo = drm_lookup_buffer_object(file_priv, handle, 1);
mutex_unlock(&dev->struct_mutex);
- if (!bo) {
+ if (!bo)
return -EINVAL;
- }
-
+
+ if (use_old_fence_class)
+ fence_class = bo->fence_class;
+
/*
* Only allow creator to change shared buffer mask.
*/
req->flags,
req->mask,
req->hint | DRM_BO_HINT_DONT_FENCE,
+ 1,
rep, NULL);
if (ret)
extern int drm_bo_handle_validate(struct drm_file * file_priv, uint32_t handle,
uint32_t fence_class, uint64_t flags,
uint64_t mask, uint32_t hint,
+ int use_old_fence_class,
struct drm_bo_info_rep * rep,
struct drm_buffer_object **bo_rep);
extern struct drm_buffer_object *drm_lookup_buffer_object(struct drm_file * file_priv,