iris: Move to iris_i915_batch.c code to destroy i915 context
Signed-off-by: José Roberto de Souza <jose.souza@intel.com> Reviewed-by: Lionel Landwerlin <lionel.g.landwerlin@intel.com> Part-of: <https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/21965>
This commit is contained in:

committed by
Marge Bot

parent
cb40ff3ecb
commit
c86d6c8af8
@@ -225,6 +225,16 @@ clone_hw_context(struct iris_batch *batch)
|
|||||||
return new_ctx;
|
return new_ctx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static void
|
||||||
|
iris_destroy_kernel_context(struct iris_bufmgr *bufmgr, uint32_t ctx_id)
|
||||||
|
{
|
||||||
|
if (ctx_id != 0 &&
|
||||||
|
!intel_gem_destroy_context(iris_bufmgr_get_fd(bufmgr), ctx_id)) {
|
||||||
|
fprintf(stderr, "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY failed: %s\n",
|
||||||
|
strerror(errno));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
bool
|
bool
|
||||||
iris_i915_replace_batch(struct iris_batch *batch)
|
iris_i915_replace_batch(struct iris_batch *batch)
|
||||||
{
|
{
|
||||||
@@ -258,6 +268,14 @@ iris_i915_replace_batch(struct iris_batch *batch)
|
|||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void iris_i915_destroy_batch(struct iris_batch *batch)
|
||||||
|
{
|
||||||
|
struct iris_screen *screen = batch->screen;
|
||||||
|
struct iris_bufmgr *bufmgr = screen->bufmgr;
|
||||||
|
|
||||||
|
iris_destroy_kernel_context(bufmgr, batch->ctx_id);
|
||||||
|
}
|
||||||
|
|
||||||
void iris_i915_init_batches(struct iris_context *ice)
|
void iris_i915_init_batches(struct iris_context *ice)
|
||||||
{
|
{
|
||||||
if (!iris_init_engines_context(ice))
|
if (!iris_init_engines_context(ice))
|
||||||
|
@@ -29,3 +29,4 @@ struct iris_context;
|
|||||||
|
|
||||||
void iris_i915_init_batches(struct iris_context *ice);
|
void iris_i915_init_batches(struct iris_context *ice);
|
||||||
bool iris_i915_replace_batch(struct iris_batch *batch);
|
bool iris_i915_replace_batch(struct iris_batch *batch);
|
||||||
|
void iris_i915_destroy_batch(struct iris_batch *batch);
|
||||||
|
@@ -510,7 +510,7 @@ iris_batch_free(const struct iris_context *ice, struct iris_batch *batch)
|
|||||||
* context
|
* context
|
||||||
*/
|
*/
|
||||||
if (!ice->has_engines_context || &ice->batches[0] == batch)
|
if (!ice->has_engines_context || &ice->batches[0] == batch)
|
||||||
iris_destroy_kernel_context(bufmgr, batch->ctx_id);
|
iris_i915_destroy_batch(batch);
|
||||||
|
|
||||||
iris_destroy_batch_measure(batch->measure);
|
iris_destroy_batch_measure(batch->measure);
|
||||||
batch->measure = NULL;
|
batch->measure = NULL;
|
||||||
|
@@ -2039,16 +2039,6 @@ init_cache_buckets(struct iris_bufmgr *bufmgr, enum iris_heap heap)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
|
||||||
iris_destroy_kernel_context(struct iris_bufmgr *bufmgr, uint32_t ctx_id)
|
|
||||||
{
|
|
||||||
if (ctx_id != 0 &&
|
|
||||||
!intel_gem_destroy_context(bufmgr->fd, ctx_id)) {
|
|
||||||
fprintf(stderr, "DRM_IOCTL_I915_GEM_CONTEXT_DESTROY failed: %s\n",
|
|
||||||
strerror(errno));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static struct intel_buffer *
|
static struct intel_buffer *
|
||||||
intel_aux_map_buffer_alloc(void *driver_ctx, uint32_t size)
|
intel_aux_map_buffer_alloc(void *driver_ctx, uint32_t size)
|
||||||
{
|
{
|
||||||
|
@@ -481,8 +481,6 @@ struct iris_bo *iris_bo_gem_create_from_name(struct iris_bufmgr *bufmgr,
|
|||||||
|
|
||||||
void* iris_bufmgr_get_aux_map_context(struct iris_bufmgr *bufmgr);
|
void* iris_bufmgr_get_aux_map_context(struct iris_bufmgr *bufmgr);
|
||||||
|
|
||||||
void iris_destroy_kernel_context(struct iris_bufmgr *bufmgr, uint32_t ctx_id);
|
|
||||||
|
|
||||||
int iris_gem_get_tiling(struct iris_bo *bo, uint32_t *tiling);
|
int iris_gem_get_tiling(struct iris_bo *bo, uint32_t *tiling);
|
||||||
int iris_gem_set_tiling(struct iris_bo *bo, const struct isl_surf *surf);
|
int iris_gem_set_tiling(struct iris_bo *bo, const struct isl_surf *surf);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user