Re: [Mesa-dev] Gallium ARB_get_program_binary support

2017-12-09 Thread Dieter Nützel

First BAD commit is patch [PATCH 2/5].
https://patchwork.freedesktop.org/patch/192329/
With it I get this in dmesg:

[34581.836122] OGL_Dispatch_33[4887]: segfault at 0 ip 9ebeafda 
sp a95580d4 error 4 in libc-2.26.so[7f6afcaf7000+1b1000]
[34706.224082] perf: interrupt took too long (5089 > 4913), lowering 
kernel.perf_event_max_sample_rate to 39250
[34918.80] OGL_Dispatch_33[19897]: segfault at 0 ip d9adbd7a 
sp e6e1b769 error 4 in libc-2.26.so[7f2fc4777000+1b1000]
[35148.576818] OGL_Dispatch_33[2934]: segfault at 0 ip 78a41511 
sp 1f147296 error 4 in libc-2.26.so[7ff11fa23000+1b1000]
[35172.410621] OGL_Dispatch_33[3371]: segfault at 0 ip ef37ae37 
sp 99ce37ab error 4 in libc-2.26.so[7f0af78ff000+1b1000]
[35383.940291] OGL_Dispatch_33[18591]: segfault at 0 ip 813f92d2 
sp 7c9305e7 error 4 in libc-2.26.so[7fee87426000+1b1000]


It's in the morning, now.
Here in 'OLD' Germany, near Hamburg.
Good night! ;-)

Dieter

Am 10.12.2017 05:15, schrieb Timothy Arceri:

Hi, as always thanks for testing :)

Are you able to find out which patch causes the crash? I'm curious if
its the ARB_get_program_binary support or if I break the regular cache
when re-factoring.

Thanks,
Tim

On 09/12/17 15:58, Dieter Nützel wrote:

Hello Tim,

first time ever, that I got a real regression with your GREAT work. 
;-)


DiRT Rally sig fault (SIGSEGV(11) with this series.
(see attachment)

Bad cache hit re-read?
Removing .cache/mesa_shader_cache do not help.
Searching for the rigth Feral (Steam?) cache dir. - Alex/James?

Then I'll have to find which of the five did it.

 From the log I got this:
[1209/054156:ERROR:sandbox_linux.cc(325)] InitializeSandbox() called 
with multiple threads in process gpu-process
[1209/054157:INFO:CONSOLE(0)] "The specified value '!' does not 
conform to the required format.  The format is '#rrggbb' where rr, gg, 
bb are two-digit hexadecimal numbers.", source: 
file://localhost/home1/alexander/My%20Games/Steam/steamapps/common/DiRT%20Rally/share/FeralUI/PGOW/Core/feralUI.html 
(0)
Installing breakpad exception handler for 
appid(steam)/version(1509425745)
[1209/054158:INFO:CONSOLE(0)] "Synchronous XMLHttpRequest on the main 
thread is deprecated because of its detrimental effects to the end 
user's experience. For more help, check http://xhr.spec.whatwg.org/.";, 
source:  (0)
[1209/054208:WARNING:x11_util.cc(1490)] X error received: serial 4814, 
error_code 3 (BadWindow (invalid Window parameter)), request_code 4, 
minor_code 0 (X_DestroyWindow)

SDL2 initialised [built against 2.0.5, running with 2.0.5]
DirtRally: dumped to 
"/home/alexander/.local/share/feral-interactive/DiRT 
Rally/crashes/2363a778-c194-621f-0f837dfb-191070fd.dmp"


Cheers,
Dieter

Am 08.12.2017 10:57, schrieb Timothy Arceri:

Core support in now in master so this is just a resend of the gallium
patches.

Resolves crash in Dead Island:

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85564

Branch available here:

https://github.com/tarceri/Mesa.git gallium-program-binary

___
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] gallivm: fix texture wrapping for texture gather for mirror modes

2017-12-09 Thread sroland
From: Roland Scheidegger 

Care must be taken that all coords end up correct, the tests are very
sensitive that everything is correctly rounded. This doesn't matter
for bilinear filter (since picking a wrong texel with weight zero is
ok), and we could also switch the per-sample coords mistakenly.
While here, also optimize the coord_mirror helper a bit (we can do the
mirroring directly by exploiting float rounding, no need for fixing up
odd/even manually).
I did not touch the mirror_clamp and mirror_clamp_to_border modes.
In contrast to mirror_clamp_to_edge and mirror_repeat these are legacy
modes. They are specified against old gl rules, which actually does
the mirroring not per sample (so you get swapped order if the coord
is in the mirrored section). I think the idea though is that they should
follow the respecified mirror_clamp_to_edge rules so the order would be
correct.
---
 src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c | 242 +++---
 1 file changed, 169 insertions(+), 73 deletions(-)

diff --git a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c 
b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
index b67a089..3605c77 100644
--- a/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
+++ b/src/gallium/auxiliary/gallivm/lp_bld_sample_soa.c
@@ -218,34 +218,42 @@ lp_build_sample_texel_soa(struct lp_build_sample_context 
*bld,
 
 
 /**
- * Helper to compute the mirror function for the PIPE_WRAP_MIRROR modes.
+ * Helper to compute the mirror function for the PIPE_WRAP_MIRROR_REPEAT mode.
+ * (Note that with pot sizes could do this much more easily post-scale
+ * with some bit arithmetic.)
  */
 static LLVMValueRef
 lp_build_coord_mirror(struct lp_build_sample_context *bld,
-  LLVMValueRef coord)
+  LLVMValueRef coord, boolean posOnly)
 {
struct lp_build_context *coord_bld = &bld->coord_bld;
-   struct lp_build_context *int_coord_bld = &bld->int_coord_bld;
-   LLVMValueRef fract, flr, isOdd;
-
-   lp_build_ifloor_fract(coord_bld, coord, &flr, &fract);
-   /* kill off NaNs */
-   /* XXX: not safe without arch rounding, fract can be anything. */
-   fract = lp_build_max_ext(coord_bld, fract, coord_bld->zero,
-GALLIVM_NAN_RETURN_OTHER_SECOND_NONNAN);
-
-   /* isOdd = flr & 1 */
-   isOdd = LLVMBuildAnd(bld->gallivm->builder, flr, int_coord_bld->one, "");
+   LLVMValueRef fract;
+   LLVMValueRef half = lp_build_const_vec(bld->gallivm, coord_bld->type, 0.5);
 
-   /* make coord positive or negative depending on isOdd */
-   /* XXX slight overkill masking out sign bit is unnecessary */
-   coord = lp_build_set_sign(coord_bld, fract, isOdd);
+   /*
+* We can just use 2*(x - round(0.5*x)) to do all the mirroring,
+* it all works out. (The result is in range [-1, 1.0], negative if
+* the coord is in the "odd" section, otherwise positive.)
+*/
 
-   /* convert isOdd to float */
-   isOdd = lp_build_int_to_float(coord_bld, isOdd);
+   coord = lp_build_mul(coord_bld, coord, half);
+   fract = lp_build_round(coord_bld, coord);
+   fract = lp_build_sub(coord_bld, coord, fract);
+   coord = lp_build_add(coord_bld, fract, fract);
 
-   /* add isOdd to coord */
-   coord = lp_build_add(coord_bld, coord, isOdd);
+   if (posOnly) {
+  /*
+   * Theoretically it's not quite 100% accurate because the spec says
+   * that ultimately a scaled coord of -x.0 should map to int coord
+   * -x + 1 with mirroring, not -x (this does not matter for bilinear
+   * filtering).
+   */
+  coord = lp_build_abs(coord_bld, coord);
+  /* kill off NaNs */
+  /* XXX: not safe without arch rounding, fract can be anything. */
+  coord = lp_build_max_ext(coord_bld, coord, coord_bld->zero,
+   GALLIVM_NAN_RETURN_OTHER_SECOND_NONNAN);
+   }
 
return coord;
 }
@@ -363,6 +371,11 @@ lp_build_sample_wrap_linear(struct lp_build_sample_context 
*bld,
   }
 
   /* clamp to [0, length] */
+  /*
+   * Unlike some other wrap modes, this should be correct for gather
+   * too. GL_CLAMP explicitly does this clamp on the coord prior to
+   * actual wrapping (which is per sample).
+   */
   coord = lp_build_clamp(coord_bld, coord, coord_bld->zero, length_f);
 
   coord = lp_build_sub(coord_bld, coord, half);
@@ -426,8 +439,13 @@ lp_build_sample_wrap_linear(struct lp_build_sample_context 
*bld,
  offset = lp_build_int_to_float(coord_bld, offset);
  coord = lp_build_add(coord_bld, coord, offset);
   }
-  /* was: clamp to [-0.5, length + 0.5], then sub 0.5 */
-  /* can skip clamp (though might not work for very large coord values) */
+  /*
+   * We don't need any clamp. Technically, for very large (pos or neg)
+   * (or infinite) values, clamp against [-length, length] would be
+   * correct, but we don't need to guarantee any specific
+   * result for such coords (the ifloor will be undefined, but for modes
+  

Re: [Mesa-dev] Gallium ARB_get_program_binary support

2017-12-09 Thread Timothy Arceri

Hi, as always thanks for testing :)

Are you able to find out which patch causes the crash? I'm curious if 
its the ARB_get_program_binary support or if I break the regular cache 
when re-factoring.


Thanks,
Tim

On 09/12/17 15:58, Dieter Nützel wrote:

Hello Tim,

first time ever, that I got a real regression with your GREAT work. ;-)

DiRT Rally sig fault (SIGSEGV(11) with this series.
(see attachment)

Bad cache hit re-read?
Removing .cache/mesa_shader_cache do not help.
Searching for the rigth Feral (Steam?) cache dir. - Alex/James?

Then I'll have to find which of the five did it.

 From the log I got this:
[1209/054156:ERROR:sandbox_linux.cc(325)] InitializeSandbox() called 
with multiple threads in process gpu-process
[1209/054157:INFO:CONSOLE(0)] "The specified value '!' does not conform 
to the required format.  The format is '#rrggbb' where rr, gg, bb are 
two-digit hexadecimal numbers.", source: 
file://localhost/home1/alexander/My%20Games/Steam/steamapps/common/DiRT%20Rally/share/FeralUI/PGOW/Core/feralUI.html 
(0)

Installing breakpad exception handler for appid(steam)/version(1509425745)
[1209/054158:INFO:CONSOLE(0)] "Synchronous XMLHttpRequest on the main 
thread is deprecated because of its detrimental effects to the end 
user's experience. For more help, check http://xhr.spec.whatwg.org/.";, 
source:  (0)
[1209/054208:WARNING:x11_util.cc(1490)] X error received: serial 4814, 
error_code 3 (BadWindow (invalid Window parameter)), request_code 4, 
minor_code 0 (X_DestroyWindow)

SDL2 initialised [built against 2.0.5, running with 2.0.5]
DirtRally: dumped to 
"/home/alexander/.local/share/feral-interactive/DiRT 
Rally/crashes/2363a778-c194-621f-0f837dfb-191070fd.dmp"


Cheers,
Dieter

Am 08.12.2017 10:57, schrieb Timothy Arceri:

Core support in now in master so this is just a resend of the gallium
patches.

Resolves crash in Dead Island:

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85564

Branch available here:

https://github.com/tarceri/Mesa.git gallium-program-binary

___
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] [Bug 104185] CS:GO randomly locks up the entire system requiring forced reboot

2017-12-09 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104185

Timothy Arceri  changed:

   What|Removed |Added

 Status|NEW |NEEDINFO

--- Comment #1 from Timothy Arceri  ---
That bug report is for the Nvidia binary driver. Can you please report what
hardware you are using. Reporting the output of 'glxinfo | grep OpenGL' should
be enough.

-- 
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


[Mesa-dev] [Bug 103579] Vertex shader causes compiler to crash in SPIRV-to-NIR

2017-12-09 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=103579

Bas Nieuwenhuizen  changed:

   What|Removed |Added

 Resolution|--- |FIXED
 Status|NEW |RESOLVED

--- Comment #2 from Bas Nieuwenhuizen  ---
A patch that fixes compilation is in master:

https://cgit.freedesktop.org/mesa/mesa/commit/?id=b926da241a4221376afe195c476f6a05621e5c75

-- 
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


[Mesa-dev] [Bug 104185] CS:GO randomly locks up the entire system requiring forced reboot

2017-12-09 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104185

Bug ID: 104185
   Summary: CS:GO randomly locks up the entire system requiring
forced reboot
   Product: Mesa
   Version: 17.2
  Hardware: x86 (IA32)
OS: Linux (All)
Status: NEW
  Severity: major
  Priority: medium
 Component: Mesa core
  Assignee: mesa-dev@lists.freedesktop.org
  Reporter: omin...@autistici.org
QA Contact: mesa-dev@lists.freedesktop.org

The issue being discussed on Valve's ticket system:
https://github.com/ValveSoftware/csgo-osx-linux/issues/1539

kisak-valve commented on 17 Oct:

"In general, no OpenGL application should be capable of deadlocking the system.
If it does, then this most likely a video driver issue."

I am not that experienced with trying to catch this in a log report. If anyone
would offer guidance I will include diagnostics.

-- 
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] [PATCH 0/3] Gallium: Signed VBO offsets to fix SPECviewperf stability

2017-12-09 Thread Dieter Nützel

Hello Marek,

could you please rebase your gl31 branch or send these rebased patches, 
again?

I'll do some 'real' apps testing over the Christmas days.

Greetings,
Dieter

Am 30.10.2017 17:23, schrieb Marek Olšák:

I use SPECviewperf from the phoronix test suite.

See the gl31 branch in my repo.

Marek

On Mon, Oct 30, 2017 at 2:18 PM, Dieter Nützel  
wrote:

Hello Marek,

running with this since it appears.
Which SPECviewperf version (self compiled) are you using?
I've read that 'latest' versions are Windows only.
Only have a _very_ old 32-bit self compiled version here, 
currently...;-)


BTW Do have a pointer to your OpenGL 3.1 Compatibility tree handy (or 
new

current version)?

Thanks,
Dieter



Am 26.10.2017 17:30, schrieb Marek Olšák:


Hi,

This is a necessary feature to prevent out-of-memory errors with
SPECviewperf for drivers relying on u_vbuf for vertex uploads.
Only RadeonSI supports it at the moment.

I don't think we need to change pipe_vertex_buffer::buffer_offset
to int64_t just yet.

Please review.

Thanks,
Marek
___
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] [Bug 104183] mesa-17.3.0/src/broadcom/qpu/qpu_pack.c:171]: (error) Invalid memcmp() argument

2017-12-09 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104183

Bug ID: 104183
   Summary: mesa-17.3.0/src/broadcom/qpu/qpu_pack.c:171]: (error)
Invalid memcmp() argument
   Product: Mesa
   Version: 17.3
  Hardware: Other
OS: All
Status: NEW
  Severity: normal
  Priority: medium
 Component: Other
  Assignee: mesa-dev@lists.freedesktop.org
  Reporter: dcb...@hotmail.com
QA Contact: mesa-dev@lists.freedesktop.org

mesa-17.3.0/src/broadcom/qpu/qpu_pack.c:171]: (error) Invalid memcmp() argument
nr 3. A non-boolean value is required.

Source code is

return (packed_sig == 0 ||
memcmp(sig, &v33_sig_map[0], sizeof(*sig) != 0));

Maybe better code

return (packed_sig == 0 ||
memcmp(sig, &v33_sig_map[0], sizeof(*sig)) != 0);

-- 
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


[Mesa-dev] [Bug 104182] Seti@Home OpenCL program starts then returns: "CL file build failure"

2017-12-09 Thread bugzilla-daemon
https://bugs.freedesktop.org/show_bug.cgi?id=104182

Bug ID: 104182
   Summary: Seti@Home OpenCL program starts then returns: "CL file
build failure"
   Product: Mesa
   Version: unspecified
  Hardware: Other
OS: All
Status: NEW
  Severity: normal
  Priority: medium
 Component: Other
  Assignee: mesa-dev@lists.freedesktop.org
  Reporter: thinkingbeyondthesqu...@gmail.com
QA Contact: mesa-dev@lists.freedesktop.org

Running Messa 17.4 Podaka PPA under Ubuntu 17.10 using AMD/ATI video card (RX
480) and an AMD Ryzen 1700. (Though I'm sure its a graphics driver/system
related issue, not a CPU issue)

This is an OpenCL error.

Seti@home, via BOINC, using proprietary AMDGPU-Pro drivers for OpenCL, works as
expected so it is likely that there is either a bug, or something unfinished,
in the Open Source OpenCL driver that is failing.

As a side note, in 2015 this issue hit the nVidia side of things generating
this issue: http://setiathome.berkeley.edu/forum_thread.php?id=77133#1665089

This might give you an idea of what may be occurring in the AMD driver side of
things.


I am reporting the bug to help improve the open source driver stack.

Cheers :)

-- 
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] gallium/{r600, radeonsi}: Fix segfault with color format (v2)

2017-12-09 Thread Denis Pauk
Hi!

As for me, patch is too minor and be in future 18.+ release is enough, As i
know application can't cause segfault by public API by this path(only by
private api).

On Tue, Nov 28, 2017 at 4:48 PM, Marek Olšák  wrote:

> On Tue, Nov 28, 2017 at 3:46 PM, Emil Velikov 
> wrote:
> > On 28 November 2017 at 13:44, Andres Gomez  wrote:
> >> Denis, this looks like a good candidate to nominate for inclusion in
> >> the 17.2 stable queue.
> >>
> >> What do you think?
> >>
> > Patch seems safe, but it's a bit meh since it says "segfault" without
> > specifying any usecase.
> > IIRC the only example is a "This only example of code, that we can use
> > for check is_format_supported call. Its not real world code."
> >
> > If anyone can weight for/against that'll be appreciated.
>
> The patch is safe to apply to stable.
>
> Marek
>



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


Re: [Mesa-dev] Gallium ARB_get_program_binary support

2017-12-09 Thread Mike Lothian
I can confirm these sort the crash on Dead Island and I can confirm I'm
also seeing the segfault with Dirt Rally

On Fri, 8 Dec 2017 at 09:58 Timothy Arceri  wrote:

> Core support in now in master so this is just a resend of the gallium
> patches.
>
> Resolves crash in Dead Island:
>
> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=85564
>
> Branch available here:
>
> https://github.com/tarceri/Mesa.git gallium-program-binary
>
> ___
> 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