diff options
author | Rob Clark <robclark@freedesktop.org> | 2016-02-14 10:02:13 -0500 |
---|---|---|
committer | Rob Clark <robclark@freedesktop.org> | 2016-02-17 10:41:55 -0500 |
commit | 0e91dccf9cd2894e46028bac39caa54d80e39e8e (patch) | |
tree | 0893ff28facef1d038fef157cb7750f51029035b /src/gallium/drivers/freedreno/freedreno_query_hw.c | |
parent | 9d23d7b7cb804fa554c483830685088f97c8877c (diff) |
freedreno/query: some queries don't have ->begin_query()
Signed-off-by: Rob Clark <robclark@freedesktop.org>
Diffstat (limited to 'src/gallium/drivers/freedreno/freedreno_query_hw.c')
-rw-r--r-- | src/gallium/drivers/freedreno/freedreno_query_hw.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/gallium/drivers/freedreno/freedreno_query_hw.c b/src/gallium/drivers/freedreno/freedreno_query_hw.c index 8e421b614b..fe985d57d1 100644 --- a/src/gallium/drivers/freedreno/freedreno_query_hw.c +++ b/src/gallium/drivers/freedreno/freedreno_query_hw.c @@ -160,6 +160,12 @@ static void fd_hw_end_query(struct fd_context *ctx, struct fd_query *q) { struct fd_hw_query *hq = fd_hw_query(q); + /* there are a couple special cases, which don't have + * a matching ->begin_query(): + */ + if (skip_begin_query(q->type) && !q->active) { + fd_hw_begin_query(ctx, q); + } if (!q->active) return; if (is_active(hq, ctx->stage)) |