mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-09 06:48:06 +02:00
v3d: add a helper function to flush jobs using a BO
v2: use _mesa_set_search() (Eric) Reviewed-by: Eric Anholt <eric@anholt.net>
This commit is contained in:
parent
e8cd7a30d5
commit
5491883a9a
2 changed files with 12 additions and 0 deletions
|
|
@ -583,6 +583,7 @@ struct v3d_job *v3d_get_job_for_fbo(struct v3d_context *v3d);
|
|||
void v3d_job_add_bo(struct v3d_job *job, struct v3d_bo *bo);
|
||||
void v3d_job_add_write_resource(struct v3d_job *job, struct pipe_resource *prsc);
|
||||
void v3d_job_submit(struct v3d_context *v3d, struct v3d_job *job);
|
||||
void v3d_flush_jobs_using_bo(struct v3d_context *v3d, struct v3d_bo *bo);
|
||||
void v3d_flush_jobs_writing_resource(struct v3d_context *v3d,
|
||||
struct pipe_resource *prsc);
|
||||
void v3d_flush_jobs_reading_resource(struct v3d_context *v3d,
|
||||
|
|
|
|||
|
|
@ -146,6 +146,17 @@ v3d_job_add_write_resource(struct v3d_job *job, struct pipe_resource *prsc)
|
|||
_mesa_hash_table_insert(v3d->write_jobs, prsc, job);
|
||||
}
|
||||
|
||||
void
|
||||
v3d_flush_jobs_using_bo(struct v3d_context *v3d, struct v3d_bo *bo)
|
||||
{
|
||||
hash_table_foreach(v3d->jobs, entry) {
|
||||
struct v3d_job *job = entry->data;
|
||||
|
||||
if (_mesa_set_search(job->bos, bo))
|
||||
v3d_job_submit(v3d, job);
|
||||
}
|
||||
}
|
||||
|
||||
void
|
||||
v3d_flush_jobs_writing_resource(struct v3d_context *v3d,
|
||||
struct pipe_resource *prsc)
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue