From: Tiziano Bacocco Date: Fri, 6 Feb 2015 18:03:41 +0000 (+0100) Subject: nv50,nvc0: Mark PIPE_QUERY_TIMESTAMP_DISJOINT as ready immediately X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=1e02f2badfd925739099bcfaa55ca99a484470d8;p=mesa.git nv50,nvc0: Mark PIPE_QUERY_TIMESTAMP_DISJOINT as ready immediately Without this when an application issues that query, it would try to wait the result from the gpu, and since no query has been actually issued, it will wait forever. Signed-off-by: Tiziano Bacocco Reviewed-by: Ilia Mirkin --- diff --git a/src/gallium/drivers/nouveau/nv50/nv50_query.c b/src/gallium/drivers/nouveau/nv50/nv50_query.c index e0671ce5375..b9c7d1e1dca 100644 --- a/src/gallium/drivers/nouveau/nv50/nv50_query.c +++ b/src/gallium/drivers/nouveau/nv50/nv50_query.c @@ -231,6 +231,8 @@ nv50_query_end(struct pipe_context *pipe, struct pipe_query *pq) nv50_query_get(push, q, 0, 0x0d005002 | (q->index << 5)); break; case PIPE_QUERY_TIMESTAMP_DISJOINT: + /* This query is not issued on GPU because disjoint is forced to FALSE */ + q->ready = TRUE; break; default: assert(0); diff --git a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c index 3a6df9dcf87..ec464b51a71 100644 --- a/src/gallium/drivers/nouveau/nvc0/nvc0_query.c +++ b/src/gallium/drivers/nouveau/nvc0/nvc0_query.c @@ -397,6 +397,10 @@ nvc0_query_end(struct pipe_context *pipe, struct pipe_query *pq) /* indexed by TFB buffer instead of by vertex stream */ nvc0_query_get(push, q, 0x00, 0x0d005002 | (q->index << 5)); break; + case PIPE_QUERY_TIMESTAMP_DISJOINT: + /* This query is not issued on GPU because disjoint is forced to FALSE */ + q->state = NVC0_QUERY_STATE_READY; + break; default: #ifdef NOUVEAU_ENABLE_DRIVER_STATISTICS if (q->type >= NVC0_QUERY_DRV_STAT(0) &&