Mesa (master): gallium/hud: add frametime graph (v2)

2018-05-15 Thread Marek Olšák
Module: Mesa
Branch: master
Commit: 71892fbe194d543fbed88ee0c68c2402f6e47a65
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=71892fbe194d543fbed88ee0c68c2402f6e47a65

Author: Matthias Groß 
Date:   Tue May 15 23:09:05 2018 +0200

gallium/hud: add frametime graph (v2)

Thanks for your comment. This version has an additional boolean in the
fps_info struct to distinguish between fps and frame time calculation.
The struct is initialised in the respecting install functions for this
purpose.

Signed-off-by: Marek Olšák 

---

 src/gallium/auxiliary/hud/hud_context.c |  4 
 src/gallium/auxiliary/hud/hud_fps.c | 34 -
 src/gallium/auxiliary/hud/hud_private.h |  1 +
 3 files changed, 38 insertions(+), 1 deletion(-)

diff --git a/src/gallium/auxiliary/hud/hud_context.c 
b/src/gallium/auxiliary/hud/hud_context.c
index 6ed9ccffdb..61db98b4b0 100644
--- a/src/gallium/auxiliary/hud/hud_context.c
+++ b/src/gallium/auxiliary/hud/hud_context.c
@@ -1247,6 +1247,9 @@ hud_parse_env_var(struct hud_context *hud, struct 
pipe_screen *screen,
   if (strcmp(name, "fps") == 0) {
  hud_fps_graph_install(pane);
   }
+  else if (strcmp(name, "frametime") == 0) {
+ hud_frametime_graph_install(pane);
+  }
   else if (strcmp(name, "cpu") == 0) {
  hud_cpu_graph_install(pane, ALL_CPUS);
   }
@@ -1557,6 +1560,7 @@ print_help(struct pipe_screen *screen)
puts("");
puts("  Available names:");
puts("fps");
+   puts("frametime");
puts("cpu");
 
for (i = 0; i < num_cpus; i++)
diff --git a/src/gallium/auxiliary/hud/hud_fps.c 
b/src/gallium/auxiliary/hud/hud_fps.c
index c8438d0f5e..29110f5575 100644
--- a/src/gallium/auxiliary/hud/hud_fps.c
+++ b/src/gallium/auxiliary/hud/hud_fps.c
@@ -33,6 +33,7 @@
 #include "util/u_memory.h"
 
 struct fps_info {
+   boolean frametime;
int frames;
uint64_t last_time;
 };
@@ -46,7 +47,12 @@ query_fps(struct hud_graph *gr, struct pipe_context *pipe)
info->frames++;
 
if (info->last_time) {
-  if (info->last_time + gr->pane->period <= now) {
+  if (info->frametime) {
+ double frametime = ((double)now - (double)info->last_time) / 1000.0;
+ hud_graph_add_value(gr, frametime);
+ info->last_time = now;
+  }
+  else if (info->last_time + gr->pane->period <= now) {
  double fps = ((uint64_t)info->frames) * 100 /
   (double)(now - info->last_time);
  info->frames = 0;
@@ -80,6 +86,8 @@ hud_fps_graph_install(struct hud_pane *pane)
   FREE(gr);
   return;
}
+   struct fps_info *info = gr->query_data;
+   info->frametime = false;
 
gr->query_new_value = query_fps;
 
@@ -90,3 +98,27 @@ hud_fps_graph_install(struct hud_pane *pane)
 
hud_pane_add_graph(pane, gr);
 }
+
+void
+hud_frametime_graph_install(struct hud_pane *pane)
+{
+   struct hud_graph *gr = CALLOC_STRUCT(hud_graph);
+
+   if (!gr)
+  return;
+
+   strcpy(gr->name, "frametime (ms)");
+   gr->query_data = CALLOC_STRUCT(fps_info);
+   if (!gr->query_data) {
+  FREE(gr);
+  return;
+   }
+   struct fps_info *info = gr->query_data;
+   info->frametime = true;
+
+   gr->query_new_value = query_fps;
+
+   gr->free_query_data = free_query_data;
+
+   hud_pane_add_graph(pane, gr);
+}
diff --git a/src/gallium/auxiliary/hud/hud_private.h 
b/src/gallium/auxiliary/hud/hud_private.h
index b64e29e93e..deed329a8a 100644
--- a/src/gallium/auxiliary/hud/hud_private.h
+++ b/src/gallium/auxiliary/hud/hud_private.h
@@ -157,6 +157,7 @@ struct hud_batch_query_context;
 int hud_get_num_cpus(void);
 
 void hud_fps_graph_install(struct hud_pane *pane);
+void hud_frametime_graph_install(struct hud_pane *pane);
 void hud_cpu_graph_install(struct hud_pane *pane, unsigned cpu_index);
 void hud_thread_busy_install(struct hud_pane *pane, const char *name, bool 
main);
 void hud_thread_counter_install(struct hud_pane *pane, const char *name,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): eg/compute: Use reference counting to handle compute memory pool.

2018-05-15 Thread Jan Vesely
Module: Mesa
Branch: master
Commit: f3521ce2c440bd50020a3ff81e6d9fa17c01009c
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f3521ce2c440bd50020a3ff81e6d9fa17c01009c

Author: Jan Vesely 
Date:   Thu May  3 19:26:29 2018 -0400

eg/compute: Use reference counting to handle compute memory pool.

Use pipe_reference to release old RAT surfaces.
RAT surface adds a reference to pool bo, so use reference counting for pool->bo
as well.

v2: Use the same pattern for both defrag paths
Drop confusing comment

CC: 
Signed-off-by: Jan Vesely 
Reviewed-by: Dave Airlie 

---

 src/gallium/drivers/r600/compute_memory_pool.c | 16 +---
 src/gallium/drivers/r600/evergreen_compute.c   |  3 ++-
 2 files changed, 7 insertions(+), 12 deletions(-)

diff --git a/src/gallium/drivers/r600/compute_memory_pool.c 
b/src/gallium/drivers/r600/compute_memory_pool.c
index bcda155c71..4b0e0044f5 100644
--- a/src/gallium/drivers/r600/compute_memory_pool.c
+++ b/src/gallium/drivers/r600/compute_memory_pool.c
@@ -91,10 +91,7 @@ void compute_memory_pool_delete(struct compute_memory_pool* 
pool)
 {
COMPUTE_DBG(pool->screen, "* compute_memory_pool_delete()\n");
free(pool->shadow);
-   if (pool->bo) {
-   pool->screen->b.b.resource_destroy((struct pipe_screen *)
-   pool->screen, (struct pipe_resource *)pool->bo);
-   }
+   pipe_resource_reference(>bo, NULL);
/* In theory, all of the items were freed in compute_memory_free.
 * Just delete the list heads
 */
@@ -213,10 +210,8 @@ int compute_memory_grow_defrag_pool(struct 
compute_memory_pool *pool,
 
compute_memory_defrag(pool, src, dst, pipe);
 
-   pool->screen->b.b.resource_destroy(
-   (struct pipe_screen *)pool->screen,
-   src);
-
+   /* Release the old buffer */
+   pipe_resource_reference(>bo, NULL);
pool->bo = temp;
pool->size_in_dw = new_size_in_dw;
}
@@ -230,9 +225,8 @@ int compute_memory_grow_defrag_pool(struct 
compute_memory_pool *pool,
return -1;
 
pool->size_in_dw = new_size_in_dw;
-   pool->screen->b.b.resource_destroy(
-   (struct pipe_screen *)pool->screen,
-   (struct pipe_resource *)pool->bo);
+   /* Release the old buffer */
+   pipe_resource_reference(>bo, NULL);
pool->bo = r600_compute_buffer_alloc_vram(pool->screen, 
pool->size_in_dw * 4);
compute_memory_shadow(pool, pipe, 0);
 
diff --git a/src/gallium/drivers/r600/evergreen_compute.c 
b/src/gallium/drivers/r600/evergreen_compute.c
index bd3d8934b3..8c818700b6 100644
--- a/src/gallium/drivers/r600/evergreen_compute.c
+++ b/src/gallium/drivers/r600/evergreen_compute.c
@@ -122,7 +122,8 @@ static void evergreen_set_rat(struct r600_pipe_compute 
*pipe,
rat_templ.u.tex.first_layer = 0;
rat_templ.u.tex.last_layer = 0;
 
-   /* Add the RAT the list of color buffers */
+   /* Add the RAT the list of color buffers. Drop the old buffer first. */
+   pipe_surface_reference(>ctx->framebuffer.state.cbufs[id], NULL);
pipe->ctx->framebuffer.state.cbufs[id] = pipe->ctx->b.b.create_surface(
(struct pipe_context *)pipe->ctx,
(struct pipe_resource *)bo, _templ);

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): gallivm: Use alloca_undef with array type instead of alloca_array

2018-05-15 Thread Roland Scheidegger
Module: Mesa
Branch: master
Commit: e01af38d6faf5dfd0f4ac6548ae03c27cca1dede
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=e01af38d6faf5dfd0f4ac6548ae03c27cca1dede

Author: Roland Scheidegger 
Date:   Tue May 15 04:35:50 2018 +0200

gallivm: Use alloca_undef with array type instead of alloca_array

Use a single allocation of array type instead of the old-style array
allocation for the temp and immediate arrays.
Probably only makes a difference if they aren't used indirectly (so,
if we used them solely because there's too many temps or immediates).
In this case the sroa and early-cse passes can sometimes do some
optimizations which they otherwise cannot.
(As a side note, for the temp reg array, we actually really should
use one allocation per array id, not just one for everything.)
Note that the instcombine pass would actually promote such
allocations to single alloc of array type as well, but it's too late
for some artificial shaders we've seen to help (we don't want to run
instcombine at the beginning due to its cost, hence would need
another sroa/cse pass after instcombine). sroa/early-cse help there
because they can actually eliminate all of the huge shader, reducing
it to a single const output (don't ask...).
(Interestingly, instcombine also removes all the bitcasts we do on that
allocation for single-value gathering, and in the end directly indexes
into the single vector elements, which according to spec is only
semi-valid, but this happens regardless. Another thing instcombine also
does is use inbound GEPs, which is probably something we should do
manually as well - for indirectly indexed reg files llvm may not be
able to figure it out on its own, but we should be able to guarantee
all pointers are always inbound. In any case, by the looks of it
using single allocation with array type seems to be the right thing
to do even for ordinary shaders.)
No piglit change.

Reviewed-by: Jose Fonseca 

---

 src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c | 61 +
 1 file changed, 33 insertions(+), 28 deletions(-)

diff --git a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c 
b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
index e411f906c7..83d7dbea9a 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_tgsi_soa.c
@@ -741,7 +741,8 @@ static void lp_exec_mask_store(struct lp_exec_mask *mask,
 
assert(lp_check_value(bld_store->type, val));
assert(LLVMGetTypeKind(LLVMTypeOf(dst_ptr)) == LLVMPointerTypeKind);
-   assert(LLVMGetElementType(LLVMTypeOf(dst_ptr)) == LLVMTypeOf(val));
+   assert(LLVMGetElementType(LLVMTypeOf(dst_ptr)) == LLVMTypeOf(val) ||
+  LLVMGetTypeKind(LLVMGetElementType(LLVMTypeOf(dst_ptr))) == 
LLVMArrayTypeKind);
 
if (exec_mask) {
   LLVMValueRef res, dst;
@@ -852,7 +853,14 @@ get_file_ptr(struct lp_build_tgsi_soa_context *bld,
 
if (bld->indirect_files & (1 << file)) {
   LLVMValueRef lindex = lp_build_const_int32(bld->bld_base.base.gallivm, 
index * 4 + chan);
-  return LLVMBuildGEP(builder, var_of_array, , 1, "");
+  if (LLVMGetTypeKind(LLVMGetElementType(LLVMTypeOf(var_of_array))) == 
LLVMArrayTypeKind) {
+ LLVMValueRef gep[2];
+ gep[0] = lp_build_const_int32(bld->bld_base.base.gallivm, 0);
+ gep[1] = lindex;
+ return LLVMBuildGEP(builder, var_of_array, gep, 2, "");
+  } else {
+ return LLVMBuildGEP(builder, var_of_array, , 1, "");
+  }
}
else {
   assert(index <= bld->bld_base.info->file_max[file]);
@@ -1352,21 +1360,20 @@ emit_fetch_immediate(
  /* Gather values from the immediate register array */
  res = build_gather(bld_base, imms_array, index_vec, NULL, index_vec2);
   } else {
- LLVMValueRef lindex = lp_build_const_int32(gallivm,
-reg->Register.Index * 4 + swizzle);
- LLVMValueRef imms_ptr =  LLVMBuildGEP(builder,
-bld->imms_array, , 1, 
"");
+ LLVMValueRef gep[2];
+ gep[0] = lp_build_const_int32(gallivm, 0);
+ gep[1] = lp_build_const_int32(gallivm, reg->Register.Index * 4 + 
swizzle);
+ LLVMValueRef imms_ptr = LLVMBuildGEP(builder,
+  bld->imms_array, gep, 2, "");
  res = LLVMBuildLoad(builder, imms_ptr, "");
 
  if (tgsi_type_is_64bit(stype)) {
-LLVMValueRef lindex1;
 LLVMValueRef imms_ptr2;
 LLVMValueRef res2;
-
-lindex1 = lp_build_const_int32(gallivm,
-   reg->Register.Index * 4 + swizzle + 
1);
+gep[1] = lp_build_const_int32(gallivm,
+  reg->Register.Index * 4 + swizzle + 
1);
 imms_ptr2 = LLVMBuildGEP(builder,
-  bld->imms_array, , 1, "");
+

Mesa (master): radv: add generated files to .gitignore(s)

2018-05-15 Thread Samuel Pitoiset
Module: Mesa
Branch: master
Commit: bd0b6b9f17d401aa70eac279a3541d8e2a96ae0f
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd0b6b9f17d401aa70eac279a3541d8e2a96ae0f

Author: Dieter Nützel 
Date:   Sun May 13 23:10:07 2018 +0200

radv: add generated files to .gitignore(s)

Signed-off-by: Dieter Nützel 
Reviewed-by: Samuel Pitoiset 

---

 src/amd/vulkan/.gitignore | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/amd/vulkan/.gitignore b/src/amd/vulkan/.gitignore
index 7c02e42bb0..1aabfc08a9 100644
--- a/src/amd/vulkan/.gitignore
+++ b/src/amd/vulkan/.gitignore
@@ -2,6 +2,7 @@
 /radv_entrypoints.c
 /radv_entrypoints.h
 /radv_extensions.c
+/radv_extensions.h
 /radv_timestamp.h
 /dev_icd.json
 /vk_format_table.c

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): spirv: fix visiting inner loops with same break/continue block

2018-05-15 Thread Samuel Pitoiset
Module: Mesa
Branch: master
Commit: 6bde8c560877512852ff49fafa296eb71a5ec14b
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6bde8c560877512852ff49fafa296eb71a5ec14b

Author: Samuel Pitoiset 
Date:   Tue May 15 12:00:30 2018 +0200

spirv: fix visiting inner loops with same break/continue block

We should stop walking through the CFG when the inner loop's
break block ends up as the same block as the outer loop's
continue block because we are already going to visit it.

This fixes the following assertion which ends up by crashing
in RADV or ANV:

SPIR-V parsing FAILED:
In file ../src/compiler/spirv/vtn_cfg.c:381
block->node.link.next == NULL
0 bytes into the SPIR-V binary

This also fixes a crash with a camera shader from SteamVR.

v2: make use of vtn_get_branch_type() and add an assertion

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106090
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106504
CC: 18.0 18.1 
Signed-off-by: Samuel Pitoiset 
Reviewed-by: Jason Ekstrand 

---

 src/compiler/spirv/vtn_cfg.c | 13 +
 1 file changed, 13 insertions(+)

diff --git a/src/compiler/spirv/vtn_cfg.c b/src/compiler/spirv/vtn_cfg.c
index e7d2f9ea61..ad4374112e 100644
--- a/src/compiler/spirv/vtn_cfg.c
+++ b/src/compiler/spirv/vtn_cfg.c
@@ -374,6 +374,19 @@ vtn_cfg_walk_blocks(struct vtn_builder *b, struct 
list_head *cf_list,
  vtn_cfg_walk_blocks(b, >cont_body, new_loop_cont, NULL, NULL,
  new_loop_break, NULL, block);
 
+ enum vtn_branch_type branch_type =
+vtn_get_branch_type(b, new_loop_break, switch_case, switch_break,
+loop_break, loop_cont);
+
+ if (branch_type != vtn_branch_type_none) {
+/* Stop walking through the CFG when this inner loop's break block
+ * ends up as the same block as the outer loop's continue block
+ * because we are already going to visit it.
+ */
+vtn_assert(branch_type == vtn_branch_type_loop_continue);
+return;
+ }
+
  block = new_loop_break;
  continue;
   }

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): mesa/st: handle vert_attrib_mask in nir case too

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: d89f58a6b8436b59dcf3b896c0ccddabed3f78fd
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d89f58a6b8436b59dcf3b896c0ccddabed3f78fd

Author: Rob Clark 
Date:   Tue May 15 14:29:46 2018 -0400

mesa/st: handle vert_attrib_mask in nir case too

Note, actually fixes 9987a072cb, but the problems don't show up until
19a91841c3.

Fixes: 19a91841c3 st/mesa: Use Array._DrawVAO in st_atom_array.c.
Fixes: 9987a072cb st/mesa: Make the input_to_index array available.
Signed-off-by: Rob Clark 
Reviewed-by: Marek Olšák 
Reviewed-by: Mathias Fröhlich 

---

 src/mesa/state_tracker/st_program.c | 14 +++---
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/src/mesa/state_tracker/st_program.c 
b/src/mesa/state_tracker/st_program.c
index a52c9f8256..a7671b7fd1 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -634,13 +634,6 @@ st_create_vp_variant(struct st_context *st,
  fprintf(stderr, "mesa: cannot emulate deprecated features\n");
}
 
-   for (unsigned index = 0; index < vpv->num_inputs; ++index) {
-  unsigned attr = stvp->index_to_input[index];
-  if (attr == ST_DOUBLE_ATTRIB_PLACEHOLDER)
- continue;
-  vpv->vert_attrib_mask |= 1u << attr;
-   }
-
if (ST_DEBUG & DEBUG_TGSI) {
   tgsi_dump(vpv->tgsi.tokens, 0);
   debug_printf("\n");
@@ -672,6 +665,13 @@ st_get_vp_variant(struct st_context *st,
   /* create now */
   vpv = st_create_vp_variant(st, stvp, key);
   if (vpv) {
+  for (unsigned index = 0; index < vpv->num_inputs; ++index) {
+ unsigned attr = stvp->index_to_input[index];
+ if (attr == ST_DOUBLE_ATTRIB_PLACEHOLDER)
+continue;
+ vpv->vert_attrib_mask |= 1u << attr;
+  }
+
  /* insert into list */
  vpv->next = stvp->variants;
  stvp->variants = vpv;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (18.0): 32 new commits

2018-05-15 Thread Juan Antonio Suárez Romero
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0f9bd67c4bfae58f9befa2464addee3086dcab4c
Author: Kai Wasserbäch 
Date:   Tue May 1 14:14:46 2018 +0200

opencl: autotools: Fix linking order for OpenCL target

Otherwise the build fails with an undefined reference to
clang::FrontendTimesIsEnabled.

Bugzilla: https://bugs.freedesktop.org/106209
Cc: Jan Vesely 
Cc: mesa-sta...@lists.freedesktop.org
Signed-off-by: Kai Wasserbäch 
Acked-by: Jan Vesely 
Tested-by: Aaron Watry 
Tested-by: Dieter Nützel 
(cherry picked from commit b691d9192c436aba5a76577b7d772a791283a2e2)

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=0fa8cdfd13339b8ce9c271eadf2e518ecdba64cd
Author: Bas Nieuwenhuizen 
Date:   Sat May 12 23:56:56 2018 +0200

radv: Disable texel buffers with A2 SNORM/SSCALED/SINT for pre-vega.

The hardware always interprets the alpha as unsigned and fixing it
in the shader is going to add unacceptable overheads.

CC: 18.0 18.1 
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106480
Reviewed-by: Samuel Pitoiset 
(cherry picked from commit f944a59996287de85d4c6d9b7b000d25f41b1d79)

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9a4b915517e20baea4fce23a6b50dff79fe7f7c3
Author: Bas Nieuwenhuizen 
Date:   Mon May 14 22:33:23 2018 +0200

radv: Fix up 2_10_10_10 alpha sign.

Pre-Vega HW always interprets the alpha for this format as unsigned,
so we have to implement a fixup to do the sign correctly for signed
formats.

v2: Improve indexing mess.

CC: 18.0 
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=106480
Reviewed-by: Samuel Pitoiset 
(Backport of 3d4d388e392 "radv: Fix up 2_10_10_10 alpha sign.")

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=1b0406f465a4d2c028f7c7574299228606d4a1b1
Author: Bas Nieuwenhuizen 
Date:   Mon May 14 03:01:21 2018 +0200

radv: Translate logic ops.

radeonsi could pass them through but the enum changed between
Gallium and Vulkan, so we have to translate.

In progress I made the register defines a bit more readable.

CC: 18.0 18.1 
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=100430
Reviewed-by: Samuel Pitoiset 
(cherry picked from commit dd102405dea022f6c27bc42176f50f3bb2761ae6)
[Juan A. Suarez: resolve trivial conflicts]
Signed-off-by: Juan A. Suarez Romero 

Conflicts:
src/amd/vulkan/radv_pipeline.c

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=33a8aad4591bbbac005e4ecf012c781f31311006
Author: Dave Airlie 
Date:   Fri May 11 14:55:29 2018 +1000

radv: use compute path for multi-layer images.

I don't think the hw resolve path can't handle multi-layer images.

This fixes all the:
dEQP-VK.renderpass.multisample_resolve.layers_*
tests on my VI card.

Reviewed-by: Bas Nieuwenhuizen 
Cc: 
(cherry picked from commit 5978d54a09e6ad151c0bd365de0e2c82bbf493d1)

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=4a4a51bdfb32bb229dd6f3f6019f34e4c835af9f
Author: Dave Airlie 
Date:   Fri May 11 14:54:21 2018 +1000

radv: resolve all layers in compute resolve path.

This path should iterate across all layers, I've some ideas
for doing this in a single pass, but this is simpler for now.

This passes the tests because we don't use the fragment path
unless we have DCC, and we don't have DCC on layered images.

Reviewed-by: Bas Nieuwenhuizen 
Cc: 
(cherry picked from commit 98dbaa445a83108b59bd56e8f3224c13c36ba1d5)

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=9a537aad110f90f740e73f829f62889282673bb5
Author: Juan A. Suarez Romero 
Date:   Mon May 14 10:21:09 2018 +0200

cherry-ignore: radv/resolve: do fmask decompress on all layers.

stable: The commit requires earlier commits ab0e625a671 and 62510846b6e
which did not land in branch.

Signed-off-by: Juan A. Suarez Romero 

URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=538022adf879c9682a9bdac75ec1a199a68b6a31
Author: Jan Vesely 
Date:   Thu May 10 18:29:13 2018 -0400

winsys/amdgpu: Destroy dev_hash table when the last winsys is removed.

Fixes memory leak on module unload.


Mesa (master): cso: check count == 0 in cso_set_vertex_buffers

2018-05-15 Thread Marek Olšák
Module: Mesa
Branch: master
Commit: 3e27b377f2c0e1644c466cdb32872b771300ffda
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3e27b377f2c0e1644c466cdb32872b771300ffda

Author: Marek Olšák 
Date:   Mon May 14 22:32:33 2018 -0400

cso: check count == 0 in cso_set_vertex_buffers

The code didn't expect that, leading to crashes.

Fixes: 86d63b53a20a747e "gallium: remove aux_vertex_buffer_slot code"

Tested-by: Michel Dänzer 

---

 src/gallium/auxiliary/cso_cache/cso_context.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/src/gallium/auxiliary/cso_cache/cso_context.c 
b/src/gallium/auxiliary/cso_cache/cso_context.c
index e3d46f3c8d..2543c5ff61 100644
--- a/src/gallium/auxiliary/cso_cache/cso_context.c
+++ b/src/gallium/auxiliary/cso_cache/cso_context.c
@@ -1147,6 +1147,9 @@ void cso_set_vertex_buffers(struct cso_context *ctx,
 {
struct u_vbuf *vbuf = ctx->vbuf;
 
+   if (!count)
+  return;
+
if (vbuf) {
   u_vbuf_set_vertex_buffers(vbuf, start_slot, count, buffers);
   return;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): vc5: use util_copy_framebuffer_state

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: dace6072459c94ff7dbc3a248ceef3d95bd26631
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=dace6072459c94ff7dbc3a248ceef3d95bd26631

Author: Rob Clark 
Date:   Mon May 14 09:09:17 2018 -0400

vc5: use util_copy_framebuffer_state

Signed-off-by: Rob Clark 
Reviewed-by: Eric Anholt 

---

 src/gallium/drivers/vc5/vc5_state.c | 14 ++
 1 file changed, 2 insertions(+), 12 deletions(-)

diff --git a/src/gallium/drivers/vc5/vc5_state.c 
b/src/gallium/drivers/vc5/vc5_state.c
index 42ae64157c..0ed0acd16a 100644
--- a/src/gallium/drivers/vc5/vc5_state.c
+++ b/src/gallium/drivers/vc5/vc5_state.c
@@ -24,6 +24,7 @@
 
 #include "pipe/p_state.h"
 #include "util/u_format.h"
+#include "util/u_framebuffer.h"
 #include "util/u_inlines.h"
 #include "util/u_math.h"
 #include "util/u_memory.h"
@@ -441,21 +442,10 @@ vc5_set_framebuffer_state(struct pipe_context *pctx,
 {
 struct vc5_context *vc5 = vc5_context(pctx);
 struct pipe_framebuffer_state *cso = >framebuffer;
-unsigned i;
 
 vc5->job = NULL;
 
-for (i = 0; i < framebuffer->nr_cbufs; i++)
-pipe_surface_reference(>cbufs[i], framebuffer->cbufs[i]);
-for (; i < vc5->framebuffer.nr_cbufs; i++)
-pipe_surface_reference(>cbufs[i], NULL);
-
-cso->nr_cbufs = framebuffer->nr_cbufs;
-
-pipe_surface_reference(>zsbuf, framebuffer->zsbuf);
-
-cso->width = framebuffer->width;
-cso->height = framebuffer->height;
+util_copy_framebuffer_state(cso, framebuffer);
 
 vc5->swap_color_rb = 0;
 vc5->blend_dst_alpha_one = 0;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): freedreno: fence should hold a ref to pipe

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: 273f7d84049ad3c204571206b060d403e1ff2f94
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=273f7d84049ad3c204571206b060d403e1ff2f94

Author: Rob Clark 
Date:   Wed May  9 07:52:53 2018 -0400

freedreno: fence should hold a ref to pipe

Since the fence can outlive the context, and all it really needs to wait
on a fence is the pipe, use the new fd_pipe reference counting to hold a
ref to the pipe and drop the ctx pointer.

This fixes a crash seen with (for example) glmark2:

  #0  fd_pipe_wait_timeout (pipe=0xbf48678b3cd7b32b, timestamp=0, 
timeout=18446744073709551615) at freedreno_pipe.c:101
  #1  0xbdf75914 in fd_fence_finish (pscreen=0x561110, ctx=0x0, 
fence=0xc55c10, timeout=18446744073709551615) at 
../src/gallium/drivers/freedreno/freedreno_fence.c:96
  #2  0xbde154e4 in dri_flush (cPriv=0xb1ff80, dPriv=0x556660, flags=3, 
reason=__DRI2_THROTTLE_SWAPBUFFER) at 
../src/gallium/state_trackers/dri/dri_drawable.c:569
  #3  0xbecd8b44 in loader_dri3_flush (draw=0x558a28, flags=3, 
throttle_reason=__DRI2_THROTTLE_SWAPBUFFER) at 
../src/loader/loader_dri3_helper.c:656
  #4  0xbecbc36c in glx_dri3_flush_drawable (draw=0x558a28, flags=3) at 
../src/glx/dri3_glx.c:132
  #5  0xbecd91e8 in loader_dri3_swap_buffers_msc (draw=0x558a28, 
target_msc=0, divisor=0, remainder=0, flush_flags=3, force_copy=false) at 
../src/loader/loader_dri3_helper.c:827
  #6  0xbecbcfc4 in dri3_swap_buffers (pdraw=0x5589f0, target_msc=0, 
divisor=0, remainder=0, flush=1) at ../src/glx/dri3_glx.c:587
  #7  0xbec98218 in glXSwapBuffers (dpy=0x502bb0, drawable=2097154) at 
../src/glx/glxcmds.c:840
  #8  0x0040994c in CanvasGeneric::update (this=0xf400) at 
../src/canvas-generic.cpp:114
  #9  0x00411594 in MainLoop::step (this=this@entry=0x5728f0) at 
../src/main-loop.cpp:108
  #10 0x00409498 in do_benchmark (canvas=...) at ../src/main.cpp:117
  #11 0x004071b0 in main (argc=, argv=) 
at ../src/main.cpp:210

Signed-off-by: Rob Clark 

---

 configure.ac| 2 +-
 meson.build | 2 +-
 src/gallium/drivers/freedreno/freedreno_fence.c | 7 ---
 3 files changed, 6 insertions(+), 5 deletions(-)

diff --git a/configure.ac b/configure.ac
index a9babec9a4..5f5e76040d 100644
--- a/configure.ac
+++ b/configure.ac
@@ -78,7 +78,7 @@ LIBDRM_AMDGPU_REQUIRED=2.4.91
 LIBDRM_INTEL_REQUIRED=2.4.75
 LIBDRM_NVVIEUX_REQUIRED=2.4.66
 LIBDRM_NOUVEAU_REQUIRED=2.4.66
-LIBDRM_FREEDRENO_REQUIRED=2.4.91
+LIBDRM_FREEDRENO_REQUIRED=2.4.92
 LIBDRM_ETNAVIV_REQUIRED=2.4.89
 
 dnl Versions for external dependencies
diff --git a/meson.build b/meson.build
index e52b4a5109..9a538e9951 100644
--- a/meson.build
+++ b/meson.build
@@ -1041,7 +1041,7 @@ _drm_amdgpu_ver = '2.4.91'
 _drm_radeon_ver = '2.4.71'
 _drm_nouveau_ver = '2.4.66'
 _drm_etnaviv_ver = '2.4.89'
-_drm_freedreno_ver = '2.4.91'
+_drm_freedreno_ver = '2.4.92'
 _drm_intel_ver = '2.4.75'
 _drm_ver = '2.4.75'
 
diff --git a/src/gallium/drivers/freedreno/freedreno_fence.c 
b/src/gallium/drivers/freedreno/freedreno_fence.c
index 1925f726a2..c4e20226b5 100644
--- a/src/gallium/drivers/freedreno/freedreno_fence.c
+++ b/src/gallium/drivers/freedreno/freedreno_fence.c
@@ -41,7 +41,7 @@ struct pipe_fence_handle {
 * fence_fd become valid and the week reference is dropped.
 */
struct fd_batch *batch;
-   struct fd_context *ctx;
+   struct fd_pipe *pipe;
struct fd_screen *screen;
int fence_fd;
uint32_t timestamp;
@@ -68,6 +68,7 @@ static void fd_fence_destroy(struct pipe_fence_handle *fence)
 {
if (fence->fence_fd != -1)
close(fence->fence_fd);
+   fd_pipe_del(fence->pipe);
FREE(fence);
 }
 
@@ -93,7 +94,7 @@ boolean fd_fence_finish(struct pipe_screen *pscreen,
return ret == 0;
}
 
-   if (fd_pipe_wait_timeout(fence->ctx->pipe, fence->timestamp, timeout))
+   if (fd_pipe_wait_timeout(fence->pipe, fence->timestamp, timeout))
return false;
 
return true;
@@ -111,7 +112,7 @@ static struct pipe_fence_handle * fence_create(struct 
fd_context *ctx,
pipe_reference_init(>reference, 1);
 
fence->batch = batch;
-   fence->ctx = ctx;
+   fence->pipe = fd_pipe_ref(ctx->pipe);
fence->screen = ctx->screen;
fence->timestamp = timestamp;
fence->fence_fd = fence_fd;

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): freedreno/a4xx: remove fd4_shader_stateobj

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: d48a2404a227193b0e17b94ce10481f36d99430c
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=d48a2404a227193b0e17b94ce10481f36d99430c

Author: Rob Clark 
Date:   Fri May 11 08:16:37 2018 -0400

freedreno/a4xx: remove fd4_shader_stateobj

Extra level of indirection that serves no purpose.

Signed-off-by: Rob Clark 

---

 src/gallium/drivers/freedreno/a4xx/fd4_emit.h|  8 
 src/gallium/drivers/freedreno/a4xx/fd4_program.c | 21 ++---
 src/gallium/drivers/freedreno/a4xx/fd4_program.h |  4 
 3 files changed, 10 insertions(+), 23 deletions(-)

diff --git a/src/gallium/drivers/freedreno/a4xx/fd4_emit.h 
b/src/gallium/drivers/freedreno/a4xx/fd4_emit.h
index a724caedc2..73bf199300 100644
--- a/src/gallium/drivers/freedreno/a4xx/fd4_emit.h
+++ b/src/gallium/drivers/freedreno/a4xx/fd4_emit.h
@@ -71,8 +71,8 @@ static inline const struct ir3_shader_variant *
 fd4_emit_get_vp(struct fd4_emit *emit)
 {
if (!emit->vp) {
-   struct fd4_shader_stateobj *so = emit->prog->vp;
-   emit->vp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->vp;
+   emit->vp = ir3_shader_variant(shader, emit->key, emit->debug);
}
return emit->vp;
 }
@@ -86,8 +86,8 @@ fd4_emit_get_fp(struct fd4_emit *emit)
static const struct ir3_shader_variant binning_fp = {};
emit->fp = _fp;
} else {
-   struct fd4_shader_stateobj *so = emit->prog->fp;
-   emit->fp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->fp;
+   emit->fp = ir3_shader_variant(shader, emit->key, 
emit->debug);
}
}
return emit->fp;
diff --git a/src/gallium/drivers/freedreno/a4xx/fd4_program.c 
b/src/gallium/drivers/freedreno/a4xx/fd4_program.c
index 05b0c4f9ae..7c399d99a1 100644
--- a/src/gallium/drivers/freedreno/a4xx/fd4_program.c
+++ b/src/gallium/drivers/freedreno/a4xx/fd4_program.c
@@ -39,22 +39,13 @@
 #include "fd4_texture.h"
 #include "fd4_format.h"
 
-static void
-delete_shader_stateobj(struct fd4_shader_stateobj *so)
-{
-   ir3_shader_destroy(so->shader);
-   free(so);
-}
-
-static struct fd4_shader_stateobj *
+static struct ir3_shader *
 create_shader_stateobj(struct pipe_context *pctx, const struct 
pipe_shader_state *cso,
enum shader_t type)
 {
struct fd_context *ctx = fd_context(pctx);
struct ir3_compiler *compiler = ctx->screen->compiler;
-   struct fd4_shader_stateobj *so = CALLOC_STRUCT(fd4_shader_stateobj);
-   so->shader = ir3_shader_create(compiler, cso, type, >debug);
-   return so;
+   return ir3_shader_create(compiler, cso, type, >debug);
 }
 
 static void *
@@ -67,8 +58,8 @@ fd4_fp_state_create(struct pipe_context *pctx,
 static void
 fd4_fp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd4_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 static void *
@@ -81,8 +72,8 @@ fd4_vp_state_create(struct pipe_context *pctx,
 static void
 fd4_vp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd4_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 static void
diff --git a/src/gallium/drivers/freedreno/a4xx/fd4_program.h 
b/src/gallium/drivers/freedreno/a4xx/fd4_program.h
index 8dfccaf9d7..5d8eb55247 100644
--- a/src/gallium/drivers/freedreno/a4xx/fd4_program.h
+++ b/src/gallium/drivers/freedreno/a4xx/fd4_program.h
@@ -33,10 +33,6 @@
 #include "freedreno_context.h"
 #include "ir3_shader.h"
 
-struct fd4_shader_stateobj {
-   struct ir3_shader *shader;
-};
-
 struct fd4_emit;
 
 void fd4_program_emit(struct fd_ringbuffer *ring, struct fd4_emit *emit,

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): freedreno: batch cache doesn't hold a ref to batch

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: a8c0daa1720f3d018b44a10cba3ac1e3c656c5e8
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=a8c0daa1720f3d018b44a10cba3ac1e3c656c5e8

Author: Rob Clark 
Date:   Tue May  8 13:38:18 2018 -0400

freedreno: batch cache doesn't hold a ref to batch

The cache doesn't hold a (strong) reference to the batch.  So we
shouldn't be trying to drop a reference, as that leads to:

   #0  0xbecb37a0 in raise () from /lib64/libc.so.6
   #1  0xbeca159c in abort () from /lib64/libc.so.6
   #2  0xbecacf48 in __assert_fail_base () from /lib64/libc.so.6
   #3  0xbecacfa8 in __assert_fail () from /lib64/libc.so.6
   #4  0xbd28def0 in pipe_reference_described (ptr=0x4f47130, 
reference=0x0, get_desc=0xbd2e0f08 <__fd_batch_describe>) at 
../src/gallium/auxiliary/util/u_inlines.h:88
   #5  0xbd28e188 in fd_batch_reference_locked (ptr=0x4f40de0, 
batch=0x0) at ../src/gallium/drivers/freedreno/freedreno_batch.h:258
   #6  0xbd28e9a8 in fd_bc_invalidate_resource (rsc=0x4f40ca0, 
destroy=true) at ../src/gallium/drivers/freedreno/freedreno_batch_cache.c:244
   #7  0xbd293778 in fd_resource_destroy (pscreen=0xedc170, 
prsc=0x4f40ca0) at ../src/gallium/drivers/freedreno/freedreno_resource.c:644
   #8  0xbd922674 in u_transfer_helper_resource_destroy 
(pscreen=0xedc170, prsc=0x4f40ca0) at 
../src/gallium/auxiliary/util/u_transfer_helper.c:144
   #9  0xbd29527c in pipe_resource_reference (ptr=0x4f455d8, tex=0x0) 
at ../src/gallium/auxiliary/util/u_inlines.h:144
   #10 0xbd29548c in fd_surface_destroy (pctx=0x1012720, 
psurf=0x4f455d0) at ../src/gallium/drivers/freedreno/freedreno_surface.c:78
   #11 0xbd1f9c48 in pipe_surface_reference (ptr=0x4f471d0, surf=0x0) 
at ../src/gallium/auxiliary/util/u_inlines.h:113
   #12 0xbd1f9ef4 in util_copy_framebuffer_state (dst=0x4f471c8, 
src=0x0) at ../src/gallium/auxiliary/util/u_framebuffer.c:114
   #13 0xbd2e0e30 in __fd_batch_destroy (batch=0x4f47130) at 
../src/gallium/drivers/freedreno/freedreno_batch.c:225
   #14 0xbd28e1b0 in fd_batch_reference_locked (ptr=0xf010, 
batch=0x0) at ../src/gallium/drivers/freedreno/freedreno_batch.h:262
   #15 0xbd28e6b0 in fd_bc_invalidate_context (ctx=0x1012720) at 
../src/gallium/drivers/freedreno/freedreno_batch_cache.c:190
   #16 0xbd2e2b6c in fd_context_destroy (pctx=0x1012720) at 
../src/gallium/drivers/freedreno/freedreno_context.c:139
   #17 0xbd2c3280 in fd5_context_destroy (pctx=0x1012720) at 
../src/gallium/drivers/freedreno/a5xx/fd5_context.c:56
   #18 0xbd5b7a8c in st_destroy_context_priv (st=0xfd72f0, 
destroy_pipe=true) at ../src/mesa/state_tracker/st_context.c:281

Signed-off-by: Rob Clark 

---

 src/gallium/drivers/freedreno/freedreno_batch_cache.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/freedreno/freedreno_batch_cache.c 
b/src/gallium/drivers/freedreno/freedreno_batch_cache.c
index b3a6041eea..07dc1a93f0 100644
--- a/src/gallium/drivers/freedreno/freedreno_batch_cache.c
+++ b/src/gallium/drivers/freedreno/freedreno_batch_cache.c
@@ -187,7 +187,7 @@ fd_bc_invalidate_context(struct fd_context *ctx)
 
foreach_batch(batch, cache, cache->batch_mask) {
if (batch->ctx == ctx)
-   fd_batch_reference_locked(, NULL);
+   fd_bc_invalidate_batch(batch, true);
}
 
mtx_unlock(>screen->lock);

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): freedreno/a5xx: remove fd5_shader_stateobj

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: f897b67dc1299a4607478fc3792c66f78b6ca8b6
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=f897b67dc1299a4607478fc3792c66f78b6ca8b6

Author: Rob Clark 
Date:   Fri May 11 08:19:22 2018 -0400

freedreno/a5xx: remove fd5_shader_stateobj

Extra level of indirection that serves no purpose.

Signed-off-by: Rob Clark 

---

 src/gallium/drivers/freedreno/a5xx/fd5_emit.h|  8 
 src/gallium/drivers/freedreno/a5xx/fd5_program.c | 21 ++---
 src/gallium/drivers/freedreno/a5xx/fd5_program.h |  4 
 3 files changed, 10 insertions(+), 23 deletions(-)

diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_emit.h 
b/src/gallium/drivers/freedreno/a5xx/fd5_emit.h
index 2d8a0fd09c..809ae475ce 100644
--- a/src/gallium/drivers/freedreno/a5xx/fd5_emit.h
+++ b/src/gallium/drivers/freedreno/a5xx/fd5_emit.h
@@ -75,8 +75,8 @@ static inline const struct ir3_shader_variant *
 fd5_emit_get_vp(struct fd5_emit *emit)
 {
if (!emit->vp) {
-   struct fd5_shader_stateobj *so = emit->prog->vp;
-   emit->vp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->vp;
+   emit->vp = ir3_shader_variant(shader, emit->key, emit->debug);
}
return emit->vp;
 }
@@ -90,8 +90,8 @@ fd5_emit_get_fp(struct fd5_emit *emit)
static const struct ir3_shader_variant binning_fp = {};
emit->fp = _fp;
} else {
-   struct fd5_shader_stateobj *so = emit->prog->fp;
-   emit->fp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->fp;
+   emit->fp = ir3_shader_variant(shader, emit->key, 
emit->debug);
}
}
return emit->fp;
diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_program.c 
b/src/gallium/drivers/freedreno/a5xx/fd5_program.c
index 81fe7d4b58..c93f257edf 100644
--- a/src/gallium/drivers/freedreno/a5xx/fd5_program.c
+++ b/src/gallium/drivers/freedreno/a5xx/fd5_program.c
@@ -38,22 +38,13 @@
 #include "fd5_texture.h"
 #include "fd5_format.h"
 
-static void
-delete_shader_stateobj(struct fd5_shader_stateobj *so)
-{
-   ir3_shader_destroy(so->shader);
-   free(so);
-}
-
-static struct fd5_shader_stateobj *
+static struct ir3_shader *
 create_shader_stateobj(struct pipe_context *pctx, const struct 
pipe_shader_state *cso,
enum shader_t type)
 {
struct fd_context *ctx = fd_context(pctx);
struct ir3_compiler *compiler = ctx->screen->compiler;
-   struct fd5_shader_stateobj *so = CALLOC_STRUCT(fd5_shader_stateobj);
-   so->shader = ir3_shader_create(compiler, cso, type, >debug);
-   return so;
+   return ir3_shader_create(compiler, cso, type, >debug);
 }
 
 static void *
@@ -66,8 +57,8 @@ fd5_fp_state_create(struct pipe_context *pctx,
 static void
 fd5_fp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd5_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 static void *
@@ -80,8 +71,8 @@ fd5_vp_state_create(struct pipe_context *pctx,
 static void
 fd5_vp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd5_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 void
diff --git a/src/gallium/drivers/freedreno/a5xx/fd5_program.h 
b/src/gallium/drivers/freedreno/a5xx/fd5_program.h
index 585263e0a8..72cbf9a8b8 100644
--- a/src/gallium/drivers/freedreno/a5xx/fd5_program.h
+++ b/src/gallium/drivers/freedreno/a5xx/fd5_program.h
@@ -31,10 +31,6 @@
 #include "freedreno_context.h"
 #include "ir3_shader.h"
 
-struct fd5_shader_stateobj {
-   struct ir3_shader *shader;
-};
-
 struct fd5_emit;
 
 void fd5_emit_shader(struct fd_ringbuffer *ring, const struct 
ir3_shader_variant *so);

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): vc4: use util_copy_framebuffer_state

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: dae4c98dd7669acbc5488d50751cde6cefc6883e
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=dae4c98dd7669acbc5488d50751cde6cefc6883e

Author: Rob Clark 
Date:   Mon May 14 09:08:43 2018 -0400

vc4: use util_copy_framebuffer_state

Signed-off-by: Rob Clark 
Reviewed-by: Eric Anholt 

---

 src/gallium/drivers/vc4/vc4_state.c | 14 ++
 1 file changed, 2 insertions(+), 12 deletions(-)

diff --git a/src/gallium/drivers/vc4/vc4_state.c 
b/src/gallium/drivers/vc4/vc4_state.c
index f8c3781849..408a9e0af2 100644
--- a/src/gallium/drivers/vc4/vc4_state.c
+++ b/src/gallium/drivers/vc4/vc4_state.c
@@ -23,6 +23,7 @@
  */
 
 #include "pipe/p_state.h"
+#include "util/u_framebuffer.h"
 #include "util/u_inlines.h"
 #include "util/u_math.h"
 #include "util/u_memory.h"
@@ -414,21 +415,10 @@ vc4_set_framebuffer_state(struct pipe_context *pctx,
 {
 struct vc4_context *vc4 = vc4_context(pctx);
 struct pipe_framebuffer_state *cso = >framebuffer;
-unsigned i;
 
 vc4->job = NULL;
 
-for (i = 0; i < framebuffer->nr_cbufs; i++)
-pipe_surface_reference(>cbufs[i], framebuffer->cbufs[i]);
-for (; i < vc4->framebuffer.nr_cbufs; i++)
-pipe_surface_reference(>cbufs[i], NULL);
-
-cso->nr_cbufs = framebuffer->nr_cbufs;
-
-pipe_surface_reference(>zsbuf, framebuffer->zsbuf);
-
-cso->width = framebuffer->width;
-cso->height = framebuffer->height;
+util_copy_framebuffer_state(cso, framebuffer);
 
 /* Nonzero texture mipmap levels are laid out as if they were in
  * power-of-two-sized spaces.  The renderbuffer config infers its

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): freedreno/a3xx: remove fd3_shader_stateobj

2018-05-15 Thread Rob Clark
Module: Mesa
Branch: master
Commit: 2c40f2ba32ec2b5476f389b65f48fca7fa331683
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=2c40f2ba32ec2b5476f389b65f48fca7fa331683

Author: Rob Clark 
Date:   Fri May 11 08:11:01 2018 -0400

freedreno/a3xx: remove fd3_shader_stateobj

Extra level of indirection that serves no purpose.

Signed-off-by: Rob Clark 

---

 src/gallium/drivers/freedreno/a3xx/fd3_emit.h|  8 
 src/gallium/drivers/freedreno/a3xx/fd3_program.c | 25 
 src/gallium/drivers/freedreno/a3xx/fd3_program.h |  6 +-
 3 files changed, 13 insertions(+), 26 deletions(-)

diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_emit.h 
b/src/gallium/drivers/freedreno/a3xx/fd3_emit.h
index 5e574da199..72e807ec24 100644
--- a/src/gallium/drivers/freedreno/a3xx/fd3_emit.h
+++ b/src/gallium/drivers/freedreno/a3xx/fd3_emit.h
@@ -62,8 +62,8 @@ static inline const struct ir3_shader_variant *
 fd3_emit_get_vp(struct fd3_emit *emit)
 {
if (!emit->vp) {
-   struct fd3_shader_stateobj *so = emit->prog->vp;
-   emit->vp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->vp;
+   emit->vp = ir3_shader_variant(shader, emit->key, emit->debug);
}
return emit->vp;
 }
@@ -77,8 +77,8 @@ fd3_emit_get_fp(struct fd3_emit *emit)
static const struct ir3_shader_variant binning_fp = {};
emit->fp = _fp;
} else {
-   struct fd3_shader_stateobj *so = emit->prog->fp;
-   emit->fp = ir3_shader_variant(so->shader, emit->key, 
emit->debug);
+   struct ir3_shader *shader = emit->prog->fp;
+   emit->fp = ir3_shader_variant(shader, emit->key, 
emit->debug);
}
}
return emit->fp;
diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_program.c 
b/src/gallium/drivers/freedreno/a3xx/fd3_program.c
index f43d5c47ce..64eeb106e5 100644
--- a/src/gallium/drivers/freedreno/a3xx/fd3_program.c
+++ b/src/gallium/drivers/freedreno/a3xx/fd3_program.c
@@ -40,22 +40,13 @@
 #include "fd3_texture.h"
 #include "fd3_format.h"
 
-static void
-delete_shader_stateobj(struct fd3_shader_stateobj *so)
-{
-   ir3_shader_destroy(so->shader);
-   free(so);
-}
-
-static struct fd3_shader_stateobj *
+static struct ir3_shader *
 create_shader_stateobj(struct pipe_context *pctx, const struct 
pipe_shader_state *cso,
enum shader_t type)
 {
struct fd_context *ctx = fd_context(pctx);
struct ir3_compiler *compiler = ctx->screen->compiler;
-   struct fd3_shader_stateobj *so = CALLOC_STRUCT(fd3_shader_stateobj);
-   so->shader = ir3_shader_create(compiler, cso, type, >debug);
-   return so;
+   return ir3_shader_create(compiler, cso, type, >debug);
 }
 
 static void *
@@ -68,8 +59,8 @@ fd3_fp_state_create(struct pipe_context *pctx,
 static void
 fd3_fp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd3_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 static void *
@@ -82,15 +73,15 @@ fd3_vp_state_create(struct pipe_context *pctx,
 static void
 fd3_vp_state_delete(struct pipe_context *pctx, void *hwcso)
 {
-   struct fd3_shader_stateobj *so = hwcso;
-   delete_shader_stateobj(so);
+   struct ir3_shader *so = hwcso;
+   ir3_shader_destroy(so);
 }
 
 bool
-fd3_needs_manual_clipping(const struct fd3_shader_stateobj *so,
+fd3_needs_manual_clipping(const struct ir3_shader *shader,
  const struct 
pipe_rasterizer_state *rast)
 {
-   uint64_t outputs = ir3_shader_outputs(so->shader);
+   uint64_t outputs = ir3_shader_outputs(shader);
 
return (!rast->depth_clip ||
util_bitcount(rast->clip_plane_enable) > 6 ||
diff --git a/src/gallium/drivers/freedreno/a3xx/fd3_program.h 
b/src/gallium/drivers/freedreno/a3xx/fd3_program.h
index b95df4cc6b..04ebf12ed9 100644
--- a/src/gallium/drivers/freedreno/a3xx/fd3_program.h
+++ b/src/gallium/drivers/freedreno/a3xx/fd3_program.h
@@ -33,10 +33,6 @@
 #include "freedreno_context.h"
 #include "ir3_shader.h"
 
-struct fd3_shader_stateobj {
-   struct ir3_shader *shader;
-};
-
 struct fd3_emit;
 
 void fd3_program_emit(struct fd_ringbuffer *ring, struct fd3_emit *emit,
@@ -44,7 +40,7 @@ void fd3_program_emit(struct fd_ringbuffer *ring, struct 
fd3_emit *emit,
 
 void fd3_prog_init(struct pipe_context *pctx);
 
-bool fd3_needs_manual_clipping(const struct fd3_shader_stateobj *,
+bool fd3_needs_manual_clipping(const struct ir3_shader *,
   const struct 
pipe_rasterizer_state *);
 
 #endif /* FD3_PROGRAM_H_ */

___

Mesa (master): docs/meson: mark code/commands as

2018-05-15 Thread Eric Engeström
Module: Mesa
Branch: master
Commit: 37d44e26082e1e502259dd68bfbabb3a03e8acd7
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=37d44e26082e1e502259dd68bfbabb3a03e8acd7

Author: Eric Engestrom 
Date:   Mon May 14 16:47:57 2018 +0100

docs/meson: mark code/commands as 

Reviewed-by: Dylan Baker 
Signed-off-by: Eric Engestrom 

---

 docs/meson.html | 20 ++--
 1 file changed, 10 insertions(+), 10 deletions(-)

diff --git a/docs/meson.html b/docs/meson.html
index 9706e49c5c..f394a22fc2 100644
--- a/docs/meson.html
+++ b/docs/meson.html
@@ -33,7 +33,7 @@ out in odd ways.
 
 The meson program is used to configure the source directory and generates
 either a ninja build file or Visual Studio® build files. The latter must
-be enabled via the --backend switch, as ninja is the default backend on all
+be enabled via the --backend switch, as ninja is the default 
backend on all
 operating systems. Meson only supports out-of-tree builds, and must be passed a
 directory to put built and generated sources into. We'll call that directory
 "build" for examples.
@@ -60,7 +60,7 @@ directory, but this feature is being discussed upstream.
 
 With additional arguments meson configure is used to change
 options on already configured build directory. All options passed to this
-command are in the form -D "command"="value".
+command are in the form -D "command"="value".
 
 
 
@@ -114,13 +114,13 @@ change compiler in a configured build directory.
 CFLAGS=-Wno-typedef-redefinition ninja -C build-clang
 
 
-Meson also honors DESTDIR for installs
+Meson also honors DESTDIR for installs
 
 
 
 LLVM
 Meson includes upstream logic to wrap llvm-config using it's standard
-dependency interface. It will search $PATH (or %PATH% on windows) for
+dependency interface. It will search $PATH (or 
%PATH% on windows) for
 llvm-config, so using an LLVM from a non-standard path is as easy as
 PATH=/path/with/llvm-config:$PATH meson build.
 
@@ -152,13 +152,13 @@ configure. Mesa defined options are always passed 
as -Doption=foo.
 This option will set the compiler debug/optimisation levels to aid
 debugging the Mesa libraries.
 
-Note that in meson this defaults to "debugoptimized", and  not setting it to
-"release" will yield non-optimal performance and binary size. Not using "debug"
-may interfere with debugging as some code and validation will be optimized
-away.
+Note that in meson this defaults to debugoptimized, and
+not setting it to release will yield non-optimal
+performance and binary size. Not using debug may interfere
+with debugging as some code and validation will be optimized away.
 
 
- For those wishing to pass their own optimization flags, use the "plain"
+ For those wishing to pass their own optimization flags, use the 
plain
 buildtype, which causes meson to inject no additional compiler arguments, only
 those in the C/CXXFLAGS and those that mesa itself defines.
 
@@ -166,7 +166,7 @@ those in the C/CXXFLAGS and those that mesa itself 
defines.
 
 
 -Db_ndebug
-This option controls assertions in meson projects. When set to false
+This option controls assertions in meson projects. When set to 
false
 (the default) assertions are enabled, when set to true they are disabled. This
 is unrelated to the buildtype; setting the latter to
 release will not turn off assertions.

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs/meson: replace plaintext url with a link

2018-05-15 Thread Eric Engeström
Module: Mesa
Branch: master
Commit: 5829f616ec7e80258492752ec8c4ccc3648ef017
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=5829f616ec7e80258492752ec8c4ccc3648ef017

Author: Eric Engestrom 
Date:   Mon May 14 16:47:18 2018 +0100

docs/meson: replace plaintext url with a link

Reviewed-by: Dylan Baker 
Signed-off-by: Eric Engestrom 

---

 docs/meson.html | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/docs/meson.html b/docs/meson.html
index 2c6ce47c2c..9706e49c5c 100644
--- a/docs/meson.html
+++ b/docs/meson.html
@@ -82,9 +82,9 @@ Without arguments, it will produce libGL.so and/or several 
other libraries
 depending on the options you have chosen. Later, if you want to rebuild for a
 different configuration, you should run ninja clean before
 changing the configuration, or create a new out of tree build directory for
-each configuration you want to build.
-
-http://mesonbuild.com/Using-multiple-build-directories.html
+each configuration you want to build
+http://mesonbuild.com/Using-multiple-build-directories.html;>as
+recommended in the documentation
 
 
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs/meson: fix various html issues

2018-05-15 Thread Eric Engeström
Module: Mesa
Branch: master
Commit: 67c550708aab179c0acdfbd82c72e7ad65445bf5
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=67c550708aab179c0acdfbd82c72e7ad65445bf5

Author: Eric Engestrom 
Date:   Mon May 14 16:45:31 2018 +0100

docs/meson: fix various html issues

Reviewed-by: Dylan Baker 
Signed-off-by: Eric Engestrom 

---

 docs/meson.html | 8 ++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/docs/meson.html b/docs/meson.html
index fdad0feef9..2c6ce47c2c 100644
--- a/docs/meson.html
+++ b/docs/meson.html
@@ -87,6 +87,7 @@ each configuration you want to build.
 http://mesonbuild.com/Using-multiple-build-directories.html
 
 
+
 Environment Variables
 Meson supports the standard CC and CXX environment variables for
 changing the default compiler, and CFLAGS, CXXFLAGS, and LDFLAGS for setting
@@ -117,7 +118,6 @@ change compiler in a configured build directory.
 
 
 
-
 LLVM
 Meson includes upstream logic to wrap llvm-config using it's standard
 dependency interface. It will search $PATH (or %PATH% on windows) for
@@ -143,7 +143,7 @@ One of the oddities of meson is that some options are 
different when passed to
 the meson than to meson configure. These options are
 passed as --option=foo to meson, but -Doption=foo to meson
 configure. Mesa defined options are always passed as -Doption=foo.
-
+
 
 For those coming from autotools be aware of the following:
 
@@ -173,3 +173,7 @@ is unrelated to the buildtype; setting the 
latter to
 
 
 
+
+
+
+

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): docs/meson: fix various typos

2018-05-15 Thread Eric Engeström
Module: Mesa
Branch: master
Commit: dc2dc1fa3043abef35b45a50d46d9de9135b
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=dc2dc1fa3043abef35b45a50d46d9de9135b

Author: Eric Engestrom 
Date:   Mon May 14 16:44:08 2018 +0100

docs/meson: fix various typos

Reviewed-by: Dylan Baker 
Signed-off-by: Eric Engestrom 

---

 docs/meson.html | 12 ++--
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/docs/meson.html b/docs/meson.html
index d05b5fe347..fdad0feef9 100644
--- a/docs/meson.html
+++ b/docs/meson.html
@@ -49,7 +49,7 @@ along with a build directory to view the selected options 
for. This will show
 your meson global arguments and project arguments, along with their defaults
 and your local settings.
 
-Moes does not currently support listing options before configure a build
+Meson does not currently support listing options before configure a build
 directory, but this feature is being discussed upstream.
 
 
@@ -88,7 +88,7 @@ http://mesonbuild.com/Using-multiple-build-directories.html
 
 
 Environment Variables
-Meson supports the standard CC and CXX envrionment variables for
+Meson supports the standard CC and CXX environment variables for
 changing the default compiler, and CFLAGS, CXXFLAGS, and LDFLAGS for setting
 options to the compiler and linker.
 
@@ -99,9 +99,9 @@ the popular compilers, a complete list is available
 These arguments are consumed and stored by meson when it is initialized or
 re-initialized. Therefore passing them to meson configure will not do anything,
 and passing them to ninja will only do something if ninja decides to
-re-initialze meson, for example, if a meson.build file has been changed.
+re-initialize meson, for example, if a meson.build file has been changed.
 Changing these variables will not cause all targets to be rebuilt, so running
-ninja clean is recomended when changing CFLAGS or CXXFLAGS. meson will never
+ninja clean is recommended when changing CFLAGS or CXXFLAGS. Meson will never
 change compiler in a configured build directory.
 
 
@@ -120,7 +120,7 @@ change compiler in a configured build directory.
 
 LLVM
 Meson includes upstream logic to wrap llvm-config using it's standard
-dependncy interface. It will search $PATH (or %PATH% on windows) for
+dependency interface. It will search $PATH (or %PATH% on windows) for
 llvm-config, so using an LLVM from a non-standard path is as easy as
 PATH=/path/with/llvm-config:$PATH meson build.
 
@@ -154,7 +154,7 @@ debugging the Mesa libraries.
 
 Note that in meson this defaults to "debugoptimized", and  not setting it to
 "release" will yield non-optimal performance and binary size. Not using "debug"
-may interfer with debbugging as some code and validation will be optimized
+may interfere with debugging as some code and validation will be optimized
 away.
 
 

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): meson: fix copyright symbol

2018-05-15 Thread Eric Engeström
Module: Mesa
Branch: master
Commit: 6c5df78d8b3ebd65545bf0a5c58530b8c178e566
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=6c5df78d8b3ebd65545bf0a5c58530b8c178e566

Author: Eric Engestrom 
Date:   Tue May 15 10:29:36 2018 +0100

meson: fix copyright symbol

Fixes: bd68f1013cea8742390c "autotools, meson: add tileset.h"
Signed-off-by: Eric Engestrom 

---

 src/gallium/drivers/swr/meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/gallium/drivers/swr/meson.build 
b/src/gallium/drivers/swr/meson.build
index 5b3b53d0ac..9b272aaebd 100644
--- a/src/gallium/drivers/swr/meson.build
+++ b/src/gallium/drivers/swr/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017-2018 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): autotools, meson: add tileset.h

2018-05-15 Thread Juan Antonio Suárez Romero
Module: Mesa
Branch: master
Commit: bd68f1013cea8742390c5d9945d3ca978f22b902
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=bd68f1013cea8742390c5d9945d3ca978f22b902

Author: Juan A. Suarez Romero 
Date:   Mon May 14 13:32:54 2018 +0200

autotools, meson: add tileset.h

Fixes: 4e52cb51b5 ("swr/rast: Thread locked tiles improvement")
Reviewed-by: Eric Engestrom 

---

 src/gallium/drivers/swr/Makefile.sources | 1 +
 src/gallium/drivers/swr/meson.build  | 3 ++-
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/gallium/drivers/swr/Makefile.sources 
b/src/gallium/drivers/swr/Makefile.sources
index a06d1d7b92..6753d501a0 100644
--- a/src/gallium/drivers/swr/Makefile.sources
+++ b/src/gallium/drivers/swr/Makefile.sources
@@ -132,6 +132,7 @@ CORE_CXX_SOURCES := \
rasterizer/core/threads.h \
rasterizer/core/tilemgr.cpp \
rasterizer/core/tilemgr.h \
+   rasterizer/core/tileset.h \
rasterizer/core/utils.h
 
 JITTER_CXX_SOURCES := \
diff --git a/src/gallium/drivers/swr/meson.build 
b/src/gallium/drivers/swr/meson.build
index 575133def5..5b3b53d0ac 100644
--- a/src/gallium/drivers/swr/meson.build
+++ b/src/gallium/drivers/swr/meson.build
@@ -1,4 +1,4 @@
-# Copyright © 2017-2018 Intel Corporation
+# Copyright © 2017-2018 Intel Corporation
 
 # Permission is hereby granted, free of charge, to any person obtaining a copy
 # of this software and associated documentation files (the "Software"), to deal
@@ -131,6 +131,7 @@ files_swr_arch = files(
   'rasterizer/core/threads.h',
   'rasterizer/core/tilemgr.cpp',
   'rasterizer/core/tilemgr.h',
+  'rasterizer/core/tileset.h',
   'rasterizer/core/utils.h',
   'rasterizer/memory/ClearTile.cpp',
   'rasterizer/memory/Convert.h',

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit


Mesa (master): st/xa: Bump minor

2018-05-15 Thread Thomas Hellstrom
Module: Mesa
Branch: master
Commit: 3d0b4979eed263a8ac3a05258c85a4e0a5d1196f
URL:
http://cgit.freedesktop.org/mesa/mesa/commit/?id=3d0b4979eed263a8ac3a05258c85a4e0a5d1196f

Author: Thomas Hellstrom 
Date:   Thu Mar  8 08:56:47 2018 +0100

st/xa: Bump minor

Bump xa minor to signal that the underlying mesa version is suitable for dri3.

This is a bit ugly since it doesn't relate to a specific xa interface change.
Recently there has been a number of fixes in mesa that helps enabling dri3
without any significant regressions in automated testing and common desktop
usage latency. However, the xf86-video-vmware driver has no other way to tell
but inspecting the xa version.

Signed-off-by: Thomas Hellstrom 
Reviewed-by: Brian Paul 

---

 configure.ac  | 2 +-
 src/gallium/state_trackers/xa/meson.build | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/configure.ac b/configure.ac
index 35ade986d1..a9babec9a4 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2969,7 +2969,7 @@ AC_SUBST([XVMC_MAJOR], 1)
 AC_SUBST([XVMC_MINOR], 0)
 
 AC_SUBST([XA_MAJOR], 2)
-AC_SUBST([XA_MINOR], 3)
+AC_SUBST([XA_MINOR], 4)
 AC_SUBST([XA_PATCH], 0)
 AC_SUBST([XA_VERSION], "$XA_MAJOR.$XA_MINOR.$XA_PATCH")
 
diff --git a/src/gallium/state_trackers/xa/meson.build 
b/src/gallium/state_trackers/xa/meson.build
index 109abc10b7..aff39634b3 100644
--- a/src/gallium/state_trackers/xa/meson.build
+++ b/src/gallium/state_trackers/xa/meson.build
@@ -18,7 +18,7 @@
 # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 # SOFTWARE.
 
-xa_version = ['2', '3', '0']
+xa_version = ['2', '4', '0']
 
 xa_conf = configuration_data()
 xa_conf.set('XA_MAJOR', xa_version[0])

___
mesa-commit mailing list
mesa-commit@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-commit