[Mesa-dev] [Bug 110141] glesv1_cm.pc and glesv2.pc missing after b01524fff05eef66e8cd24f1c5aacefed4209f03

2019-03-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=110141

Heiko Becker  changed:

   What|Removed |Added

 CC||heire...@exherbo.org

-- 
You are receiving this mail because:
You are the assignee for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] radv: fix the NUM_RECORDS field for vertex bindings on GFX6/GFX7

2019-03-18 Thread Bas Nieuwenhuizen
I think this needs to be modified to get the vulkan out of bounds behavior.

In particular whether a VS input is out of bounds or not can differ
between attributes from the same buffer with the same index, and that
is something not handled here.

I guess we could fix by only using the offset in the shader and
calculating the offset by adding index * stride to it, but that is
extra instructions. Is doing the typed loads still a win.

(Aside, don't we need to do the NUM_RECORDS logic for Vega too?)

On Wed, Mar 13, 2019 at 5:09 PM Samuel Pitoiset
 wrote:
>
> Since the driver now uses typed buffer loads, we don't have to
> account for the format.
>
> This fixes few CTS regressions on SI.
>
> Fixes: a66b186bebf ("radv: use typed buffer loads for vertex input fetches")
> Signed-off-by: Samuel Pitoiset 
> ---
>  src/amd/vulkan/radv_cmd_buffer.c |  3 +--
>  src/amd/vulkan/radv_pipeline.c   | 12 
>  src/amd/vulkan/radv_private.h|  6 --
>  3 files changed, 1 insertion(+), 20 deletions(-)
>
> diff --git a/src/amd/vulkan/radv_cmd_buffer.c 
> b/src/amd/vulkan/radv_cmd_buffer.c
> index 06806ed6fce..d14bb1093c5 100644
> --- a/src/amd/vulkan/radv_cmd_buffer.c
> +++ b/src/amd/vulkan/radv_cmd_buffer.c
> @@ -1990,7 +1990,6 @@ radv_flush_vertex_descriptors(struct radv_cmd_buffer 
> *cmd_buffer,
> (cmd_buffer->state.dirty & RADV_CMD_DIRTY_VERTEX_BUFFER)) &&
> cmd_buffer->state.pipeline->num_vertex_bindings &&
> radv_get_shader(cmd_buffer->state.pipeline, 
> MESA_SHADER_VERTEX)->info.info.vs.has_vertex_buffers) {
> -   struct radv_vertex_elements_info *velems = 
> &cmd_buffer->state.pipeline->vertex_elements;
> unsigned vb_offset;
> void *vb_ptr;
> uint32_t i = 0;
> @@ -2018,7 +2017,7 @@ radv_flush_vertex_descriptors(struct radv_cmd_buffer 
> *cmd_buffer,
> desc[0] = va;
> desc[1] = S_008F04_BASE_ADDRESS_HI(va >> 32) | 
> S_008F04_STRIDE(stride);
> if 
> (cmd_buffer->device->physical_device->rad_info.chip_class <= CIK && stride)
> -   desc[2] = (buffer->size - offset - 
> velems->format_size[i]) / stride + 1;
> +   desc[2] = (buffer->size - offset) / stride + 
> 1;
> else
> desc[2] = buffer->size - offset;
> desc[3] = S_008F0C_DST_SEL_X(V_008F0C_SQ_SEL_X) |
> diff --git a/src/amd/vulkan/radv_pipeline.c b/src/amd/vulkan/radv_pipeline.c
> index 7f2f96c540a..793508d15d6 100644
> --- a/src/amd/vulkan/radv_pipeline.c
> +++ b/src/amd/vulkan/radv_pipeline.c
> @@ -3531,18 +3531,6 @@ radv_compute_vertex_input_state(struct radv_pipeline 
> *pipeline,
>  {
> const VkPipelineVertexInputStateCreateInfo *vi_info =
> pCreateInfo->pVertexInputState;
> -   struct radv_vertex_elements_info *velems = &pipeline->vertex_elements;
> -
> -   for (uint32_t i = 0; i < vi_info->vertexAttributeDescriptionCount; 
> i++) {
> -   const VkVertexInputAttributeDescription *desc =
> -   &vi_info->pVertexAttributeDescriptions[i];
> -   unsigned loc = desc->location;
> -   const struct vk_format_description *format_desc;
> -
> -   format_desc = vk_format_description(desc->format);
> -
> -   velems->format_size[loc] = format_desc->block.bits / 8;
> -   }
>
> for (uint32_t i = 0; i < vi_info->vertexBindingDescriptionCount; i++) 
> {
> const VkVertexInputBindingDescription *desc =
> diff --git a/src/amd/vulkan/radv_private.h b/src/amd/vulkan/radv_private.h
> index 39fa6110fde..5c6258a2952 100644
> --- a/src/amd/vulkan/radv_private.h
> +++ b/src/amd/vulkan/radv_private.h
> @@ -1341,10 +1341,6 @@ struct radv_prim_vertex_count {
> uint8_t incr;
>  };
>
> -struct radv_vertex_elements_info {
> -   uint32_t format_size[MAX_VERTEX_ATTRIBS];
> -};
> -
>  struct radv_ia_multi_vgt_param_helpers {
> uint32_t base;
> bool partial_es_wave;
> @@ -1371,8 +1367,6 @@ struct radv_pipeline {
> uint32_t  ctx_cs_hash;
> struct radeon_cmdbuf  ctx_cs;
>
> -   struct radv_vertex_elements_info vertex_elements;
> -
> uint32_t binding_stride[MAX_VBS];
> uint8_t  num_vertex_bindings;
>
> --
> 2.21.0
>
> ___
> mesa-dev mailing list
> mesa-dev@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] ac/nir_to_llvm: make sure to we are comparing ints in a couple of places

2019-03-18 Thread Timothy Arceri
Fixes llvm validation error in a Deus Ex shader on radeonsi.

Both operands to ICmp instruction are not of the same type!
---
 src/amd/common/ac_nir_to_llvm.c | 7 ++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/src/amd/common/ac_nir_to_llvm.c b/src/amd/common/ac_nir_to_llvm.c
index 0ca3f83a248..1dfb865a41b 100644
--- a/src/amd/common/ac_nir_to_llvm.c
+++ b/src/amd/common/ac_nir_to_llvm.c
@@ -195,7 +195,10 @@ static LLVMValueRef emit_int_cmp(struct ac_llvm_context 
*ctx,
  LLVMIntPredicate pred, LLVMValueRef src0,
  LLVMValueRef src1)
 {
-   LLVMValueRef result = LLVMBuildICmp(ctx->builder, pred, src0, src1, "");
+   LLVMValueRef result;
+   src0 = ac_to_integer(ctx, src0);
+   src1 = ac_to_integer(ctx, src1);
+   result = LLVMBuildICmp(ctx->builder, pred, src0, src1, "");
return LLVMBuildSelect(ctx->builder, result,
   LLVMConstInt(ctx->i32, 0x, false),
   ctx->i32_0, "");
@@ -281,6 +284,8 @@ static LLVMValueRef emit_minmax_int(struct ac_llvm_context 
*ctx,
LLVMIntPredicate pred,
LLVMValueRef src0, LLVMValueRef src1)
 {
+   src0 = ac_to_integer(ctx, src0);
+   src1 = ac_to_integer(ctx, src1);
return LLVMBuildSelect(ctx->builder,
   LLVMBuildICmp(ctx->builder, pred, src0, src1, 
""),
   src0,
-- 
2.20.1

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

[Mesa-dev] [Bug 109929] tgsi_to_nir.c:2111: undefined reference to `gl_nir_lower_samplers_as_deref'

2019-03-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=109929

--- Comment #8 from Timur Kristóf  ---
Can you tell me how to build libxatracker.la? Ie. what autotools command to
use? Thanks!

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] MESA_Build_ERROR

2019-03-18 Thread Milav

Hello Romantsov,

Here i have sent uname -a result.

teqdiligent@ubuntu:~$ uname -a
Linux ubuntu 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26 
UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

teqdiligent@ubuntu:~$

---

in '/usr/include/bits/syscall.h' there is no define of *memfd_create.*

---

Regards

Milav
**

On 3/15/19 5:12 PM, Sergii Romantsov wrote:


/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:
In function 'memfd_create':

/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
error: 'SYS_memfd_create' undeclared (first use in this function)

/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
note: each undeclared identifier is reported only once for each
function it appears in

What is your kernel (uname -a)?
Seems memfd_create is supported from 3.17
And just for case what is content of file '/usr/include/bits/syscall.h'?

On Fri, Mar 15, 2019 at 10:26 AM Milav > wrote:


Hello Sir,

This Is Milav Soni From TEQ DILIGENT.

I cross compiled the xserver using jhbuild.

I follow the following link.

https://www.x.org/wiki/CrossCompilingXorg/

But when it comes in mesa configuration, it gives following error.


/*--error-*/

copying selected object files to avoid basename conflicts...
  CXXLD    glsl_compiler
make[4]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/compiler'
make[3]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/compiler'
Making all in intel
make[3]: Entering directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
make  all-am
make[4]: Entering directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
  CC isl/libisl_tiled_memcpy_sse41_la-isl_tiled_memcpy_sse41.lo
  CC   tools/tools_aubinator-aub_mem.o
/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:
In function 'memfd_create':

/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
error: 'SYS_memfd_create' undeclared (first use in this function)

/home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
note: each undeclared identifier is reported only once for each
function it appears in
make[4]: *** [tools/tools_aubinator-aub_mem.o] Error 1
make[4]: *** Waiting for unfinished jobs
*arm-cortexa8-linux-gnueabihf-gcc: error: unrecognized command
line option '-msse4.1'*
make[4]: ***
[isl/libisl_tiled_memcpy_sse41_la-isl_tiled_memcpy_sse41.lo] Error 1
make[4]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
make[3]: *** [all] Error 2
make[3]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src'
make[1]: *** [all] Error 2
make[1]: Leaving directory
`/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src'
make: *** [all-recursive] Error 1
*** Error during phase build of mesa-mesa: ## Error
running make -j 2  *** [37/38]

  [1] Rerun phase build
  [2] Ignore error and continue to install
  [3] Give up on module
  [4] Start shell
  [5] Reload configuration
  [6] Go to phase "wipe directory and start over"
  [7] Go to phase "configure"
  [8] Go to phase "clean"
  [9] Go to phase "distclean"
choice: ^X^CInterrupted
teqdiligent@ubuntu:~$


/*---*/

I use following configuration.

$/home/teqdiligent/sources/xorg/git/mesa/mesa/autogen.sh --prefix
/home/teqdiligent/jhbuild/wega_build/usr/local --disable-Werror
--enable-autotools --enable-xa --disable-static --disable-dri2
--with-driver=dri --cache-file=~/sources/xorg/git/autoconf-cache
--with-log-dir=/var/log --with-mesa-source=~/sources/xorg/git/mesa
--enable-malloc0returnsnull --build=x86_64-unknown-linux-gnu
--host=arm-cortexa8-linux-gnueabihf
--target=arm-cortexa8-linux-gnueabihf

AR="/home/teqdiligent/HMI_SCADA/Toolchain/arm-cortexa8-linux-gnueabihf/bin/arm-cortexa8-linux-gnueabihf-ar"

RANLIB="/home/teqdiligent/HMI_SCADA/Toolchain/arm-cortexa8-linux-gnueabihf/bin/arm-cortexa8-linux-gnueabihf-ranlib"

STRIP="/home/teqdiligent/HMI_SCADA/Toolchain

[Mesa-dev] [Bug 110116] Neverball particles are broken (GL_POINT_SPRITE)

2019-03-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=110116

--- Comment #7 from Denis  ---
yes, with your apitrace I see the issue

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] MESA_Build_ERROR

2019-03-18 Thread Sergii Romantsov
Hello,
seems my question was wrong - sorry.
Actually looks like your toolchain doesn't support this sys-call.
Think, you could try or update your toolchain if it possible to be
containing SYS_memfd_create
or you could try to use meson (
https://ubuntu.pkgs.org/18.10/ubuntu-universe-i386/meson_0.47.2-1ubuntu2_all.deb.html)
instead of autotools
Note: for meson option '-Dtools' should't contain 'intel'

On Mon, Mar 18, 2019 at 12:32 PM Milav  wrote:

> Hello Romantsov,
>
> Here i have sent uname -a result.
>
> teqdiligent@ubuntu:~$ uname -a
> Linux ubuntu 4.2.0-27-generic #32~14.04.1-Ubuntu SMP Fri Jan 22 15:32:26
> UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
> teqdiligent@ubuntu:~$
>
>
> ---
>
> in '/usr/include/bits/syscall.h' there is no define of *memfd_create.*
>
>
> ---
>
> Regards
>
> Milav
> On 3/15/19 5:12 PM, Sergii Romantsov wrote:
>
> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c: In
>> function 'memfd_create':
>> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
>> error: 'SYS_memfd_create' undeclared (first use in this function)
>> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
>> note: each undeclared identifier is reported only once for each function it
>> appears in
>
> What is your kernel (uname -a)?
> Seems memfd_create is supported from 3.17
> And just for case what is content of file '/usr/include/bits/syscall.h'?
>
> On Fri, Mar 15, 2019 at 10:26 AM Milav  wrote:
>
>> Hello Sir,
>>
>> This Is Milav Soni From TEQ DILIGENT.
>>
>> I cross compiled the xserver using jhbuild.
>>
>> I follow the following link.
>>
>> https://www.x.org/wiki/CrossCompilingXorg/
>>
>> But when it comes in mesa configuration, it gives following error.
>>
>>
>> /*--error-*/
>>
>> copying selected object files to avoid basename conflicts...
>>   CXXLDglsl_compiler
>> make[4]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/compiler'
>> make[3]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/compiler'
>> Making all in intel
>> make[3]: Entering directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
>> make  all-am
>> make[4]: Entering directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
>>   CC   isl/libisl_tiled_memcpy_sse41_la-isl_tiled_memcpy_sse41.lo
>>   CC   tools/tools_aubinator-aub_mem.o
>> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:
>> In function 'memfd_create':
>> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
>> error: 'SYS_memfd_create' undeclared (first use in this function)
>> /home/teqdiligent/sources/xorg/git/mesa/mesa/src/intel/tools/aub_mem.c:37:19:
>> note: each undeclared identifier is reported only once for each function it
>> appears in
>> make[4]: *** [tools/tools_aubinator-aub_mem.o] Error 1
>> make[4]: *** Waiting for unfinished jobs
>> *arm-cortexa8-linux-gnueabihf-gcc: error: unrecognized command line
>> option '-msse4.1'*
>> make[4]: *** [isl/libisl_tiled_memcpy_sse41_la-isl_tiled_memcpy_sse41.lo]
>> Error 1
>> make[4]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
>> make[3]: *** [all] Error 2
>> make[3]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src/intel'
>> make[2]: *** [all-recursive] Error 1
>> make[2]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src'
>> make[1]: *** [all] Error 2
>> make[1]: Leaving directory
>> `/home/teqdiligent/.cache/jhbuild/build/mesa/mesa/src'
>> make: *** [all-recursive] Error 1
>> *** Error during phase build of mesa-mesa: ## Error running make
>> -j 2  *** [37/38]
>>
>>   [1] Rerun phase build
>>   [2] Ignore error and continue to install
>>   [3] Give up on module
>>   [4] Start shell
>>   [5] Reload configuration
>>   [6] Go to phase "wipe directory and start over"
>>   [7] Go to phase "configure"
>>   [8] Go to phase "clean"
>>   [9] Go to phase "distclean"
>> choice: ^X^CInterrupted
>> teqdiligent@ubuntu:~$
>>
>>
>> /*---*/
>>
>> I use following configuration.
>>
>> $/home/teqdiligent/sources/xorg/git/mesa/mesa/autogen.sh --prefix
>> /home/teqdiligent/jhbuild/wega_build/usr/local --disable-Werror
>> --enable-autotools --enable-xa  --disable-static --disable-dri2
>> --with-driver=dri --cache-file=~/sources/xorg/git/autoconf-cache
>> --with-log-dir=/var/log --with-mesa-source=~/sources/xorg/git/mesa
>> --enable-malloc0re

[Mesa-dev] [Bug 110116] Neverball particles are broken (GL_POINT_SPRITE)

2019-03-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=110116

Denis  changed:

   What|Removed |Added

 Status|NEW |NEEDINFO

--- Comment #8 from Denis  ---
Interesting that provided apitrace reproduces issue on several my
configurations. Checked:
HSW (mesa git-master and 18.3.3)
KBL (mesa 11.2.2, 18.3.4, git-master)
also checked using Radeon GPU

OpenGL renderer string: AMD OLAND (DRM 2.50.0, 4.20.6-042006-generic, LLVM
5.0.0)
OpenGL version string: 2.1 Mesa 18.1.5


UPD: issue on apitrace is visible in X and in wayland, doesn't matter.


second check, I clonned debian repo
https://salsa.debian.org/games-team/neverball
and tested master and 1.6.0-8 packages, on HSW and on KBL. In both cases game
also works fine.



third check:
According to comment from https://github.com/Neverball/neverball/issues/170
>If ENABLE_HMD has been used, ...
I searched for any commits, mentioned this flag, and found one.

commit 0e8164fad29fce0081b8d29db946852574ff87d3 (HEAD)
Author: Jānis Rūcis 
Date:   Fri Oct 25 20:48:18 2013 +0300

Define ENABLE_HMD macro with a value

(The policy is such that the absence of ENABLE_SMTH and
-DENABLE_SMTH=0 should both do the same thing.)

Screenshot with issue, which was reproduced with this commit here: =>
https://drive.google.com/open?id=1928Qo6wGPenF-J68c8N67RPABlAzkto7

I bisected between master and this "bad" commit and found out that first time
this issue appeared here

Author: Robert Kooima   2014-03-18 19:51:06
Committer: Robert Kooima   2014-03-18 19:51:06
Parent: 9edce894a55a40167bf18d8a82fc7d85cc6c27dd (Tweaks to material effects)
Child:  c2eeda59bc8189a047c8496d3528574638dc3f12 (Replace goal and jump)
Branches: master, remotes/origin/master
Follows: neverball-1.5.4
Precedes: neverball-1.6.0

Add third light source to be used for sparkle effects

_


So according to all my findings higher, I would say that this issue is
something in the game, not in driver. And this issue can't be reproduced if I
build game from master branches:
https://github.com/Neverball/neverball
https://salsa.debian.org/games-team/neverball

Could it be compilator issue?
I have gcc 8.3.1 on HSW and gcc 7.3.0 on KBL

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH 0/9] Lima mesa driver

2019-03-18 Thread Qiang Yu
On Sun, Mar 17, 2019 at 10:20 PM Rob Clark  wrote:
>
> Any chance you could submit a gitlab MR?  Replying with comments
> inline to the driver patch is a bit more than gmail can handle..

OK, I've created one:
https://gitlab.freedesktop.org/mesa/mesa/merge_requests/465

>
> but quick comments:
>
> In lima_pack_pp_frame_reg() maybe the swizzle field in 'struct
> util_format_description' is a better way to determine swap_channels?
> Not sure how many formats mali can render two, but I hope it is
> eventually more than two..  Maybe eventually you just want a formats
> table mapping pipe_format, to corresponding hw state for tex/fb/vbo.
> (Have a look at fd[3456]_format.c.. maybe a similar idea is useful to
> you?)

In fact we haven't do more investigate on other formats, have a table
is better, but we can fill in it for only a few formats now.

>
> Alyssa's drm_find_modifier() helper can make is_modifier_ok() go away.
>
> re: lima_screen_parse_env(), you might find
> DEBUG_GET_ONCE_FLAGS_OPTION() / struct debug_named_value useful?
>
> And for framebuffer (render target), pipe_surface's
> u.tex.level/first_layer aren't necessarily zero.  Maybe I'm
> overlooking it, but I don't see where you're adding the offset within
> the resource to the requested layer/level.  (I guess you'd hit that
> during mipmap generation, at least if relying on u_blitter for mipmap
> gen)

lima does not support mipmap generation yet, will add that when we
implement the mipmap generation.

Thanks,
Qiang
>
>
> BR,
> -R
>
>
> On Fri, Mar 15, 2019 at 9:30 PM Qiang Yu  wrote:
> >
> > Mesa Gallium3D driver for ARM Mali 400/450 GPUs.
> >
> > Lima is still in development and not ready for daily usage,
> > but can run some simple tests like kmscube and glamrk2, and some
> > single full screen application like kodi-gbm.
> >
> > Mesa related EGL/GLX_EXT_buffer_age and EGL_KHR_partial_update
> > changes are not in this patch series because the solution has
> > not been settle down yet.
> >
> > All lima commits are squashed. For whole history of this
> > driver's development, see:
> > https://gitlab.freedesktop.org/lima/mesa/commits/lima-18.3
> > https://gitlab.freedesktop.org/lima/mesa/commits/lima-18.1
> >
> > Kernel driver is ready to be merged:
> > https://patchwork.kernel.org/patch/10845911/
> >
> > This patch series also depends on a kernel patch which is
> > under review now:
> > https://patchwork.kernel.org/patch/10852619/
> >
> > Erico Nunes (1):
> >   gallium: add a cap to force compute minmax indices
> >
> > Qiang Yu (6):
> >   gallium/u_math: add ushort_to_float/float_to_ushort
> >   nir: add load uniform lower to scalar
> >   u_dynarray: add util_dynarray_enlarge
> >   drm-uapi: drm_fourcc.h add ARM GPU modifier
> >   drm-uapi: add lima_drm.h
> >   gallium: add lima driver
> >
> > Rob Herring (2):
> >   kmsro: Add lima renderonly support
> >   kmsro: Add platform support for exynos and sun4i
> >
> >  include/drm-uapi/drm_fourcc.h |   31 +-
> >  include/drm-uapi/lima_drm.h   |  169 ++
> >  meson.build   |7 +-
> >  meson_options.txt |2 +-
> >  src/compiler/nir/nir_intrinsics.py|4 +-
> >  src/compiler/nir/nir_lower_io.c   |2 +-
> >  src/compiler/nir/nir_lower_io_to_scalar.c |   41 +-
> >  .../auxiliary/pipe-loader/pipe_loader_drm.c   |5 +
> >  .../auxiliary/target-helpers/drm_helper.h |   23 +
> >  .../target-helpers/drm_helper_public.h|3 +
> >  src/gallium/auxiliary/util/u_screen.c |3 +
> >  src/gallium/drivers/lima/ir/gp/codegen.c  |  619 +++
> >  src/gallium/drivers/lima/ir/gp/codegen.h  |  166 ++
> >  src/gallium/drivers/lima/ir/gp/disasm.c   |  568 ++
> >  src/gallium/drivers/lima/ir/gp/gpir.h |  392 
> >  src/gallium/drivers/lima/ir/gp/instr.c|  488 +
> >  src/gallium/drivers/lima/ir/gp/lower.c|  529 ++
> >  src/gallium/drivers/lima/ir/gp/nir.c  |  420 +
> >  src/gallium/drivers/lima/ir/gp/node.c |  492 +
> >  .../drivers/lima/ir/gp/physical_regalloc.c|  135 ++
> >  .../drivers/lima/ir/gp/reduce_scheduler.c |  220 +++
> >  src/gallium/drivers/lima/ir/gp/scheduler.c|  809 
> >  .../drivers/lima/ir/gp/value_regalloc.c   |  170 ++
> >  src/gallium/drivers/lima/ir/lima_ir.h |   65 +
> >  src/gallium/drivers/lima/ir/pp/codegen.c  |  669 +++
> >  src/gallium/drivers/lima/ir/pp/codegen.h  |  359 
> >  src/gallium/drivers/lima/ir/pp/disasm.c   |  776 
> >  src/gallium/drivers/lima/ir/pp/instr.c|  311 
> >  src/gallium/drivers/lima/ir/pp/lower.c|  483 +
> >  src/gallium/drivers/lima/ir/pp/nir.c  |  497 +
> >  src/gallium/drivers/lima/ir/pp/node.c |  432 +
> >  .../drivers/lima/ir/pp/node_to_instr.c|  401 
> >  src/gallium/drivers/lima/ir/pp/ppir.h |  515 ++
> >  src/g

[Mesa-dev] [ANNOUNCE] mesa 18.3.5

2019-03-18 Thread Emil Velikov
Mesa 18.3.5 is now available.


This release predominantly focuses on the ANV and RADV Vulkan drivers.
See the shortlog below, for more details.

-Emil


Alok Hota (1):
  swr/rast: bypass size limit for non-sampled textures

Andrii Simiklit (1):
  i965: re-emit index buffer state on a reset option change.

Axel Davy (2):
  st/nine: Ignore window size if error
  st/nine: Ignore multisample quality level if no ms

Bas Nieuwenhuizen (4):
  radv: Sync ETC2 whitelisted devices.
  radv: Fix float16 interpolation set up.
  radv: Allow interpolation on non-float types.
  radv: Interpolate less aggressively.

Carlos Garnacho (1):
  wayland/egl: Ensure EGL surface is resized on DRI update_buffers()

Danylo Piliaiev (1):
  glsl/linker: Fix unmatched TCS outputs being reduced to local variable

David Shao (1):
  meson: ensure that xmlpool_options.h is generated for gallium targets 
that need it

Eleni Maria Stea (1):
  i965: fixed clamping in set_scissor_bits when the y is flipped

Emil Velikov (8):
  docs: add sha256 checksums for 18.3.4
  meson: egl: correctly manage loader/xmlconfig
  cherry-ignore: add 19.0 only anv/push buffer nominations
  cherry-ignore: add gitlab-ci fixup commit
  cherry-ignore: ignore glsl_types memory cleanup patch
  cherry-ignore: add explicit 19.0 performance optimisations
  Update version to 18.3.5
  docs: add release notes for 18.3.5

Eric Engestrom (1):
  egl: fix libdrm-less builds

Francisco Jerez (1):
  intel/fs: Implement extended strides greater than 4 for IR source regions.

Ian Romanick (2):
  intel/fs: nir_op_extract_i8 extracts a byte, not a word
  intel/fs: Fix extract_u8 of an odd byte from a 64-bit integer

Ilia Mirkin (1):
  glsl: fix recording of variables for XFB in TCS shaders

Jason Ekstrand (10):
  intel/fs: Bail in optimize_extract_to_float if we have modifiers
  compiler/types: Add a contains_64bit helper
  nir/xfb: Properly align 64-bit values
  nir/xfb: Work in terms of components rather than slots
  nir/xfb: Handle compact arrays in gather_xfb_info
  anv: Count surfaces for non-YCbCr images in GetDescriptorSetLayoutSupport
  spirv: OpImageQueryLod requires a sampler
  spirv: Pull offset/stride from the pointer for OpArrayLength
  glsl/list: Add a list variant of insert_after
  glsl/lower_vector_derefs: Don't use a temporary for TCS outputs

Jose Maria Casanova Crespo (1):
  glsl: TCS outputs can not be transform feedback candidates on GLES

José Fonseca (1):
  scons: Workaround failures with MSVC when using SCons 3.0.[2-4].

Juan A. Suarez Romero (3):
  genxml: add missing field values for 3DSTATE_SF
  anv: advertise 8 subpixel precision bits
  anv: destroy descriptor sets when pool gets reset

Kenneth Graunke (1):
  intel/fs: Fix opt_peephole_csel to not throw away saturates.

Kevin Strasser (1):
  egl/dri: Avoid out of bounds array access

Lionel Landwerlin (1):
  intel: fix urb size for CFL GT1

Marek Olšák (5):
  radeonsi: add driconf option radeonsi_enable_nir
  radeonsi: always enable NIR for Civilization 6 to fix corruption
  driconf: add Civ6Sub executable for Civilization 6
  tgsi: don't set tgsi_info::uses_bindless_images for constbufs and hw 
atomics
  radeonsi: compile clear and copy buffer compute shaders on demand

Mauro Rossi (2):
  android: anv: fix generated files depedencies (v2)
  android: anv: fix libexpat shared dependency

Ray Zhang (1):
  glx: fix shared memory leak in X11

Rhys Perry (2):
  radv: bitcast 16-bit outputs to integers
  radv: ensure export arguments are always float

Samuel Pitoiset (8):
  radv: write the alpha channel of MRT0 when alpha coverage is enabled
  radv: fix writing the alpha channel of MRT0 when alpha coverage is enabled
  radv: fix clearing attachments in secondary command buffers
  radv: fix out-of-bounds access when copying descriptors BO list
  radv: don't copy buffer descriptors list for samplers
  radv: properly align the fence and EOP bug VA on GFX9
  radv: fix pointSizeRange limits
  radv: always initialize HTILE when the src layout is UNDEFINED

Sergii Romantsov (2):
  dri: meson: do not prefix user provided dri-drivers-path
  d3d: meson: do not prefix user provided d3d-drivers-path

Tapani Pälli (3):
  nir: initialize value in copy_prop_vars_block
  anv: retain the is_array state in create_plane_tex_instr_implicit
  anv: destroy descriptor sets when pool gets destroyed

Timothy Arceri (1):
  glsl: fix shader cache for packed param list

Yevhenii Kolesnikov (1):
  i965: Fix allow_higher_compat_version workaround limited by OpenGL 3.0

pal1000 (1):
  scons: Compatibility with Scons development version string

git tag: mesa-18.3.5

https://mesa.freedesktop.org/archive/mesa-18.3.5.tar.gz
MD5:  9957aa5909fe5257499eb56c4498208a  mesa-18.3.5.

[Mesa-dev] [Bug 110181] payment

2019-03-18 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=110181

Bug ID: 110181
   Summary: payment
   Product: Mesa
   Version: 5.1
  Hardware: Other
OS: All
Status: NEW
  Severity: critical
  Priority: medium
 Component: Demos
  Assignee: mesa-dev@lists.freedesktop.org
  Reporter: lokeshkumar.kumar...@gmail.com
QA Contact: mesa-dev@lists.freedesktop.org

please open xyz.com 
please product search 
please product add to cart
please product check out 
please click on payment 


paymnet feature is not working

-- 
You are receiving this mail because:
You are the assignee for the bug.
You are the QA Contact for the bug.___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] vulkan/util: meson build - add wayland client include

2019-03-18 Thread Dylan Baker
Quoting Eric Engestrom (2019-03-17 11:33:23)
> On Saturday, 2019-03-16 20:32:46 +, Lionel Landwerlin wrote:
> > There is merge request opened about this issue :
> > https://gitlab.freedesktop.org/mesa/mesa/merge_requests/429
> > 
> > I think the deps need to be moved from src/vulkan/wsi/meson.build into
> > src/vulkan/meson.build as they apply to the overlay, utils & wsi.
> 
> Since it's correct though, I landed Tobias' patch with my r-b and
> Cc: stable (I dropped the unnecessary [] though), and I sent MR !460
> with your suggestion.
> 

I don't think this is needed for any of the stable branches, it fixes the patch
that moves the wsi stuff into vulkan_utils, but that patch isn't in 19.0 or 18.3

Dylan


signature.asc
Description: signature
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] vulkan/util: meson build - add wayland client include

2019-03-18 Thread Eric Engestrom
On Monday, 2019-03-18 10:32:17 -0700, Dylan Baker wrote:
> Quoting Eric Engestrom (2019-03-17 11:33:23)
> > On Saturday, 2019-03-16 20:32:46 +, Lionel Landwerlin wrote:
> > > There is merge request opened about this issue :
> > > https://gitlab.freedesktop.org/mesa/mesa/merge_requests/429
> > > 
> > > I think the deps need to be moved from src/vulkan/wsi/meson.build into
> > > src/vulkan/meson.build as they apply to the overlay, utils & wsi.
> > 
> > Since it's correct though, I landed Tobias' patch with my r-b and
> > Cc: stable (I dropped the unnecessary [] though), and I sent MR !460
> > with your suggestion.
> > 
> 
> I don't think this is needed for any of the stable branches, it fixes the 
> patch
> that moves the wsi stuff into vulkan_utils, but that patch isn't in 19.0 or 
> 18.3
> 
> Dylan

Thanks for checking!
I just assumed the release scripts were going to do that for me when you guys
do the next release :P
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

Re: [Mesa-dev] [PATCH] st/mesa: implement "zombie" sampler views (v2)

2019-03-18 Thread Roland Scheidegger
Reviewed-by: Roland Scheidegger 

Am 15.03.19 um 22:12 schrieb Brian Paul:
> When st_texture_release_all_sampler_views() is called the texture may
> have sampler views belonging to several contexts.  If we unreference a
> sampler view and its refcount hits zero, we need to be sure to destroy
> the sampler view with the same context which created it.
> 
> This was not the case with the previous code which used
> pipe_sampler_view_release().  That function could end up freeing a
> sampler view with a context different than the one which created it.
> In the case of the VMware svga driver, we detected this but leaked the
> sampler view.  This led to a crash with google-chrome when the kernel
> module had too many sampler views.  VMware bug 2274734.
> 
> Alternately, if we try to delete a sampler view with the correct
> context, we may be "reaching into" a context which is active on
> another thread.  That's not safe.
> 
> To fix these issues this patch adds a per-context list of "zombie"
> sampler views.  These are views which are to be freed at some point
> when the context is active.  Other contexts may safely add sampler
> views to the zombie list at any time (it's mutex protected).  This
> avoids the context/view ownership mix-ups we had before.
> 
> Tested with: google-chrome, google earth, Redway3D Watch/Turbine demos
> a few Linux games.  If anyone can recomment some other multi-threaded,
> multi-context GL apps to test, please let me know.
> 
> v2: avoid potential race issue by always adding sampler views to the
> zombie list if the view's context doesn't match the current context,
> ignoring the refcount.
> 
> Reviewed-by: Roland Scheidegger 
> Reviewed-by: Neha Bhende 
> Reviewed-by: Mathias Fröhlich 
> Reviewed-By: Jose Fonseca 
> ---
>  src/mesa/state_tracker/st_cb_flush.c |  6 +++
>  src/mesa/state_tracker/st_context.c  | 80 
> 
>  src/mesa/state_tracker/st_context.h  | 25 ++
>  src/mesa/state_tracker/st_sampler_view.c | 21 +++--
>  src/mesa/state_tracker/st_texture.h  |  3 ++
>  5 files changed, 131 insertions(+), 4 deletions(-)
> 
> diff --git a/src/mesa/state_tracker/st_cb_flush.c 
> b/src/mesa/state_tracker/st_cb_flush.c
> index 5b3188c..81e5338 100644
> --- a/src/mesa/state_tracker/st_cb_flush.c
> +++ b/src/mesa/state_tracker/st_cb_flush.c
> @@ -39,6 +39,7 @@
>  #include "st_cb_flush.h"
>  #include "st_cb_clear.h"
>  #include "st_cb_fbo.h"
> +#include "st_context.h"
>  #include "st_manager.h"
>  #include "pipe/p_context.h"
>  #include "pipe/p_defines.h"
> @@ -53,6 +54,11 @@ st_flush(struct st_context *st,
>  {
> st_flush_bitmap_cache(st);
>  
> +   /* We want to call this function periodically.
> +* Typically, it has nothing to do so it shouldn't be expensive.
> +*/
> +   st_context_free_zombie_objects(st);
> +
> st->pipe->flush(st->pipe, fence, flags);
>  }
>  
> diff --git a/src/mesa/state_tracker/st_context.c 
> b/src/mesa/state_tracker/st_context.c
> index 2898279..c38f8e5 100644
> --- a/src/mesa/state_tracker/st_context.c
> +++ b/src/mesa/state_tracker/st_context.c
> @@ -261,6 +261,79 @@ st_invalidate_state(struct gl_context *ctx)
>  }
>  
>  
> +/*
> + * In some circumstances (such as running google-chrome) the state
> + * tracker may try to delete a resource view from a context different
> + * than when it was created.  We don't want to do that.
> + *
> + * In that situation, st_texture_release_all_sampler_views() calls this
> + * function to transfer the sampler view reference to this context (expected
> + * to be the context which created the view.)
> + */
> +void
> +st_save_zombie_sampler_view(struct st_context *st,
> +struct pipe_sampler_view *view)
> +{
> +   struct st_zombie_sampler_view_node *entry;
> +
> +   assert(view->context == st->pipe);
> +
> +   entry = MALLOC_STRUCT(st_zombie_sampler_view_node);
> +   if (!entry)
> +  return;
> +
> +   entry->view = view;
> +
> +   /* We need a mutex since this function may be called from one thread
> +* while free_zombie_resource_views() is called from another.
> +*/
> +   mtx_lock(&st->zombie_sampler_views.mutex);
> +   LIST_ADDTAIL(&entry->node, &st->zombie_sampler_views.list.node);
> +   mtx_unlock(&st->zombie_sampler_views.mutex);
> +}
> +
> +
> +/*
> + * Free any zombie sampler views that may be attached to this context.
> + */
> +static void
> +free_zombie_sampler_views(struct st_context *st)
> +{
> +   struct st_zombie_sampler_view_node *entry, *next;
> +
> +   if (LIST_IS_EMPTY(&st->zombie_sampler_views.list.node)) {
> +  return;
> +   }
> +
> +   mtx_lock(&st->zombie_sampler_views.mutex);
> +
> +   LIST_FOR_EACH_ENTRY_SAFE(entry, next,
> +&st->zombie_sampler_views.list.node, node) {
> +  LIST_DEL(&entry->node);  // remove this entry from the list
> +
> +  assert(entry->view->context == st->pipe);
> +  pipe_sampler_view_reference(&entry->view, NULL);
> +
> +  free(e

[Mesa-dev] [AppVeyor] mesa staging/19.0 #10460 failed

2019-03-18 Thread AppVeyor



Build mesa 10460 failed


Commit cf2e4490c3 by Jason Ekstrand on 3/11/2019 11:47 PM:

nir: Add a new pass to lower array dereferences on vectors\n\nThis pass was originally written for lowering TCS output reads and\nwrites but it is also applicable just about anything including UBOs,\nSSBOs, and shared variables.\n\nReviewed-by: Caio Marcelo de Oliveira Filho \n(cherry picked from commit 35b8f6f40bb45dbffb04dd883ac6644300832981)


Configure your notification preferences

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

[Mesa-dev] [PATCH] swr: Fix build with llvm-9.0.

2019-03-18 Thread Vinson Lee
Fix build error after llvm-9.0svn r352827 ("[opaque pointer types] Add a
FunctionCallee wrapper type, and use it.").

In file included from ./rasterizer/jitter/builder.h:158:0,
 from swr_shader.cpp:35:
./rasterizer/jitter/gen_builder_meta.hpp: In member function ‘llvm::Value* 
SwrJit::Builder::VGATHERPD(llvm::Value*, llvm::Value*, llvm::Value*, 
llvm::Value*, llvm::Value*, const llvm:
:Twine&)’:
./rasterizer/jitter/gen_builder_meta.hpp:51:117: error: no matching function 
for call to ‘cast(llvm::FunctionCallee)’
 Function* pFunc = 
cast(JM()->mpCurrentModule->getOrInsertFunction("meta.intrinsic.VGATHERPD",
 pFuncTy));

 ^

Suggested-by: Philip Meulengracht 
Signed-off-by: Vinson Lee 
---
 .../codegen/templates/gen_builder.hpp |  4 
 .../swr/rasterizer/jitter/builder_misc.cpp| 20 +++
 2 files changed, 24 insertions(+)

diff --git 
a/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_builder.hpp 
b/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_builder.hpp
index 5182bc4259f0..a59fb10902b9 100644
--- a/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_builder.hpp
+++ b/src/gallium/drivers/swr/rasterizer/codegen/templates/gen_builder.hpp
@@ -50,7 +50,11 @@ ${func['decl']}
 %else:
 FunctionType* pFuncTy = FunctionType::get(${ func['returnType'] }, {}, 
false);
 %endif:
+#if LLVM_VERSION_MAJOR >= 9
+Function* pFunc = 
cast(JM()->mpCurrentModule->getOrInsertFunction("meta.intrinsic.${func['name']}",
 pFuncTy).getCallee());
+#else
 Function* pFunc = 
cast(JM()->mpCurrentModule->getOrInsertFunction("meta.intrinsic.${func['name']}",
 pFuncTy));
+#endif
 return CALL(pFunc, std::initializer_list{${argList}}, name);
 %elif isIntrin:
 %if len(func['types']) != 0:
diff --git a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp 
b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp
index 24b733a28ae8..93a30b2cb452 100644
--- a/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp
+++ b/src/gallium/drivers/swr/rasterizer/jitter/builder_misc.cpp
@@ -445,7 +445,11 @@ namespace SwrJit
 args.push_back(PointerType::get(mInt8Ty, 0));
 FunctionType* callPrintTy = 
FunctionType::get(Type::getVoidTy(JM()->mContext), args, true);
 Function* callPrintFn =
+#if LLVM_VERSION_MAJOR >= 9
+
cast(JM()->mpCurrentModule->getOrInsertFunction("CallPrint", 
callPrintTy).getCallee());
+#else
 
cast(JM()->mpCurrentModule->getOrInsertFunction("CallPrint", 
callPrintTy));
+#endif
 
 // if we haven't yet added the symbol to the symbol table
 if ((sys::DynamicLibrary::SearchForAddressOfSymbol("CallPrint")) == 
nullptr)
@@ -614,7 +618,11 @@ namespace SwrJit
 {
 FunctionType* pFuncTy   = FunctionType::get(mFP32Ty, mInt16Ty);
 Function* pCvtPh2Ps = cast(
+#if LLVM_VERSION_MAJOR >= 9
+
JM()->mpCurrentModule->getOrInsertFunction("ConvertFloat16ToFloat32", 
pFuncTy).getCallee());
+#else
 
JM()->mpCurrentModule->getOrInsertFunction("ConvertFloat16ToFloat32", pFuncTy));
+#endif
 
 if 
(sys::DynamicLibrary::SearchForAddressOfSymbol("ConvertFloat16ToFloat32") == 
nullptr)
 {
@@ -650,7 +658,11 @@ namespace SwrJit
 // call scalar C function for now
 FunctionType* pFuncTy   = FunctionType::get(mInt16Ty, mFP32Ty);
 Function* pCvtPs2Ph = cast(
+#if LLVM_VERSION_MAJOR >= 9
+
JM()->mpCurrentModule->getOrInsertFunction("ConvertFloat32ToFloat16", 
pFuncTy).getCallee());
+#else
 
JM()->mpCurrentModule->getOrInsertFunction("ConvertFloat32ToFloat16", pFuncTy));
+#endif
 
 if 
(sys::DynamicLibrary::SearchForAddressOfSymbol("ConvertFloat32ToFloat16") == 
nullptr)
 {
@@ -928,7 +940,11 @@ namespace SwrJit
 
 FunctionType* pFuncTy = 
FunctionType::get(Type::getVoidTy(JM()->mContext), args, false);
 Function* pFunc   = cast(
+#if LLVM_VERSION_MAJOR >= 9
+
JM()->mpCurrentModule->getOrInsertFunction("BucketManager_StartBucket", 
pFuncTy).getCallee());
+#else
 
JM()->mpCurrentModule->getOrInsertFunction("BucketManager_StartBucket", 
pFuncTy));
+#endif
 if 
(sys::DynamicLibrary::SearchForAddressOfSymbol("BucketManager_StartBucket") ==
 nullptr)
 {
@@ -953,7 +969,11 @@ namespace SwrJit
 
 FunctionType* pFuncTy = 
FunctionType::get(Type::getVoidTy(JM()->mContext), args, false);
 Function* pFunc   = cast(
+#if LLVM_VERSION_MAJOR >=9
+
JM()->mpCurrentModule->getOrInsertFunction("BucketManager_StopBucket", 
pFuncTy).getCallee());
+#else
 
JM()->mpCurrentModule->getOrInsertFunction("BucketManager_StopBucket", 
pFuncTy));
+#endif
 if 

[Mesa-dev] Writing a glvnd vendor library - imports getProcAddress not getting called

2019-03-18 Thread mmarkd9
Hi, I'm trying to write a glvnd vendor library. I did set up the interface as 
the mesa one 
(https://gitlab.freedesktop.org/mesa/mesa/blob/master/src/glx/glxglvnd.c#L73) 
but when executing glxgears, the first Glx call (glXChooseVisual) fails and the 
callback I did set up in imports->getProcAddress is not called (I have a 
fprintf that is not getting called). 

To set it up I couldn't get the xorg.conf "GlxVendorLibrary" option to work on 
a recent Fedora28 + nvidia 410 driver (and 1.19 X server). I guess the nvidia 
driver is just plain ignoring it for now so I've been substituting my glvnd 
vendor library to libGLX_nvidia.so.1 to have it loaded. __glx_Main is being 
called but any other callback isn't.

The code is just a basic skeleton for now and I only did set up the 
isScreenSupported as in the mesa code and getProcAddress which is not getting 
called.

Can anybody please provide hints on how to debug this?
___
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/mesa-dev

[Mesa-dev] [PATCH] virgl: Use right key to insert resource to hash.

2019-03-18 Thread Lepton Wu
The old code could use gem name as key when inserting it to bo_handles
hash table while trying to remove it from hash table with bo_handle as
key in virgl_hw_res_destroy. This triggers use after free. Also, we
should only reuse resource from bo_handle hash when the handle type is
FD.

Signed-off-by: Lepton Wu 
---
 src/gallium/winsys/virgl/drm/virgl_drm_winsys.c | 15 ---
 1 file changed, 8 insertions(+), 7 deletions(-)

diff --git a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c 
b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
index 120e8eda2cd..01811a0e997 100644
--- a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
+++ b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
@@ -424,13 +424,13 @@ virgl_drm_winsys_resource_create_handle(struct 
virgl_winsys *qws,
  res = NULL;
  goto done;
   }
-   }
 
-   res = util_hash_table_get(qdws->bo_handles, (void*)(uintptr_t)handle);
-   if (res) {
-  struct virgl_hw_res *r = NULL;
-  virgl_drm_resource_reference(qdws, &r, res);
-  goto done;
+  res = util_hash_table_get(qdws->bo_handles, (void*)(uintptr_t)handle);
+  if (res) {
+struct virgl_hw_res *r = NULL;
+virgl_drm_resource_reference(qdws, &r, res);
+goto done;
+  }
}
 
res = CALLOC_STRUCT(virgl_hw_res);
@@ -469,7 +469,8 @@ virgl_drm_winsys_resource_create_handle(struct virgl_winsys 
*qws,
res->num_cs_references = 0;
res->fence_fd = -1;
 
-   util_hash_table_set(qdws->bo_handles, (void *)(uintptr_t)handle, res);
+   util_hash_table_set(qdws->bo_handles, (void *)(uintptr_t)res->bo_handle,
+   res);
 
 done:
mtx_unlock(&qdws->bo_handles_mutex);
-- 
2.21.0.225.g810b269d1ac-goog

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

[Mesa-dev] [PATCH] virgl: Set bind when creating temp resource.

2019-03-18 Thread Lepton Wu
virgl render complains about "Illegal resource" when running
dEQP-EGL.functional.color_clears.single_context.gles2.rgb888_window,
the reason is that a zero bind value was given for temp resource.

Signed-off-by: Lepton Wu 
---
 src/gallium/drivers/virgl/virgl_texture.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/gallium/drivers/virgl/virgl_texture.c 
b/src/gallium/drivers/virgl/virgl_texture.c
index 231319899e0..563dbacba7e 100644
--- a/src/gallium/drivers/virgl/virgl_texture.c
+++ b/src/gallium/drivers/virgl/virgl_texture.c
@@ -66,6 +66,7 @@ static void virgl_init_temp_resource_from_box(struct 
pipe_resource *res,
   unsigned level, unsigned flags)
 {
memset(res, 0, sizeof(*res));
+   res->bind = orig->bind;
res->format = orig->format;
res->width0 = box->width;
res->height0 = box->height;
-- 
2.21.0.225.g810b269d1ac-goog

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

[Mesa-dev] [PATCH] virgl: close drm fd when destroying virgl screen.

2019-03-18 Thread Lepton Wu
This fd was create in virgl_drm_screen_create and should be closed
in virgl_drm_screen_destroy.

Signed-off-by: Lepton Wu 
---
 src/gallium/winsys/virgl/drm/virgl_drm_winsys.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c 
b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
index 01811a0e997..5501fe3ed48 100644
--- a/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
+++ b/src/gallium/winsys/virgl/drm/virgl_drm_winsys.c
@@ -973,6 +973,7 @@ virgl_drm_screen_destroy(struct pipe_screen *pscreen)
if (destroy) {
   int fd = virgl_drm_winsys(screen->vws)->fd;
   util_hash_table_remove(fd_tab, intptr_to_pointer(fd));
+  close(fd);
}
mtx_unlock(&virgl_screen_mutex);
 
-- 
2.21.0.225.g810b269d1ac-goog

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

[Mesa-dev] [AppVeyor] mesa master #10461 completed

2019-03-18 Thread AppVeyor


Build mesa 10461 completed



Commit a777c3d7cb by Bas Nieuwenhuizen on 3/18/2019 9:20 PM:

radv: Use correct image view comparison for fast clears.\n\nThe if is actually returning true on success, enabling fast clears, so we\nneed to have the test succeed when the iview dimensions are right.\n\nFixes: d5400a5ec2a "radv: provide a helper for comparing an image extents."\nReviewed-by: Dave Airlie 


Configure your notification preferences

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

[Mesa-dev] [PATCH] nir: only override previous alu during loop analysis if supported

2019-03-18 Thread Timothy Arceri
Users of this function expect alu to be a supported comparision
if the induction variable is not NULL. Since we attempt to
override the return values if the first limit is not a const, we
must make sure we are dealing with a valid comparision before
overriding the alu instruction.

Fixes an unreachable in inverse_comparison() with the game
Assasins Creed Odyssey.

Fixes: 3235a942c16b ("nir: find induction/limit vars in iand instructions")
---
 src/compiler/nir/nir_loop_analyze.c | 6 --
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/compiler/nir/nir_loop_analyze.c 
b/src/compiler/nir/nir_loop_analyze.c
index c8304611b28..cb71a55f2f1 100644
--- a/src/compiler/nir/nir_loop_analyze.c
+++ b/src/compiler/nir/nir_loop_analyze.c
@@ -847,9 +847,11 @@ try_find_trip_count_vars_in_iand(nir_alu_instr **alu,
!is_var_constant(*limit)) {
   src = iand->src[1].src.ssa;
   if (src->parent_instr->type == nir_instr_type_alu) {
- *alu = nir_instr_as_alu(src->parent_instr);
- if (is_supported_terminator_condition(*alu))
+ nir_alu_instr *tmp_alu = nir_instr_as_alu(src->parent_instr);
+ if (is_supported_terminator_condition(tmp_alu)) {
+*alu = tmp_alu;
 *limit_rhs = get_induction_and_limit_vars(*alu, ind, limit, state);
+ }
   }
}
 }
-- 
2.20.1

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

Re: [Mesa-dev] [PATCH] nir: only override previous alu during loop analysis if supported

2019-03-18 Thread Timothy Arceri

Piglit test to trigger the crash:

https://patchwork.freedesktop.org/patch/292855/

On 19/3/19 12:09 pm, Timothy Arceri wrote:

Users of this function expect alu to be a supported comparision
if the induction variable is not NULL. Since we attempt to
override the return values if the first limit is not a const, we
must make sure we are dealing with a valid comparision before
overriding the alu instruction.

Fixes an unreachable in inverse_comparison() with the game
Assasins Creed Odyssey.

Fixes: 3235a942c16b ("nir: find induction/limit vars in iand instructions")
---
  src/compiler/nir/nir_loop_analyze.c | 6 --
  1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/src/compiler/nir/nir_loop_analyze.c 
b/src/compiler/nir/nir_loop_analyze.c
index c8304611b28..cb71a55f2f1 100644
--- a/src/compiler/nir/nir_loop_analyze.c
+++ b/src/compiler/nir/nir_loop_analyze.c
@@ -847,9 +847,11 @@ try_find_trip_count_vars_in_iand(nir_alu_instr **alu,
 !is_var_constant(*limit)) {
src = iand->src[1].src.ssa;
if (src->parent_instr->type == nir_instr_type_alu) {
- *alu = nir_instr_as_alu(src->parent_instr);
- if (is_supported_terminator_condition(*alu))
+ nir_alu_instr *tmp_alu = nir_instr_as_alu(src->parent_instr);
+ if (is_supported_terminator_condition(tmp_alu)) {
+*alu = tmp_alu;
  *limit_rhs = get_induction_and_limit_vars(*alu, ind, limit, 
state);
+ }
}
 }
  }


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