<html>
    <head>
      <base href="https://bugs.freedesktop.org/">
    </head>
    <body><table border="1" cellspacing="0" cellpadding="8">
        <tr>
          <th>Bug ID</th>
          <td><a class="bz_bug_link 
          bz_status_NEW "
   title="NEW - SWR doesn't work with OSMesa"
   href="https://bugs.freedesktop.org/show_bug.cgi?id=110716">110716</a>
          </td>
        </tr>

        <tr>
          <th>Summary</th>
          <td>SWR doesn't work with OSMesa
          </td>
        </tr>

        <tr>
          <th>Product</th>
          <td>Mesa
          </td>
        </tr>

        <tr>
          <th>Version</th>
          <td>unspecified
          </td>
        </tr>

        <tr>
          <th>Hardware</th>
          <td>Other
          </td>
        </tr>

        <tr>
          <th>OS</th>
          <td>Linux (All)
          </td>
        </tr>

        <tr>
          <th>Status</th>
          <td>NEW
          </td>
        </tr>

        <tr>
          <th>Severity</th>
          <td>blocker
          </td>
        </tr>

        <tr>
          <th>Priority</th>
          <td>medium
          </td>
        </tr>

        <tr>
          <th>Component</th>
          <td>Drivers/Gallium/swr
          </td>
        </tr>

        <tr>
          <th>Assignee</th>
          <td>mesa-dev@lists.freedesktop.org
          </td>
        </tr>

        <tr>
          <th>Reporter</th>
          <td>chuck.atkins@kitware.com
          </td>
        </tr>

        <tr>
          <th>QA Contact</th>
          <td>mesa-dev@lists.freedesktop.org
          </td>
        </tr></table>
      <p>
        <div>
        <pre>SWR triggers an assertion failure when rendering with OSMesa in the current
Meson build.  This did not happen previously with the autotools build.

Steps to reproduce:


1.  Build with meson using -Dosmesa=gallium -Dgallium-drivers=swrast,swr

2.  Use the ParaView OSMesa prebuilt binaries for 5.6.0 from
<a href="https://www.paraview.org/download/">https://www.paraview.org/download/</a>

3.  Run the benchmark with llvmpipe (success):
GALLIUM_DRIVER=llvmpipe
LD_LIBRARY_PATH=/home/khq.kitware.com/chuck.atkins/Code/mesa/install/master/lib64:$LD_LIBRARY_PATH
 ../ParaView-5.6.0-osmesa-MPI-Linux-64bit/bin/pvpython
../ParaView-5.6.0-osmesa-MPI-Linux-64bit/lib/python2.7/site-packages/paraview/benchmark/manyspheres.py 
Generating bounding box
Generating all spheres
Assigning colors
  source 0: generating 100 spheres from 0 to 100
Repositioning initial camera
Rendering first frame
Saving frame 0 screenshot
Gathering geometry counts
Beginning benchmark loop
...
Frames / Sec: 49.29
Polys / Frame: 1612
MiPolys / Sec: 0.076
Points / Frame: 1008

4.  Run the benchmark with swr (fail):
GALLIUM_DRIVER=swr LD_LIBRARY_PATH=/path/to/mesa/install/lib64:$LD_LIBRARY_PATH
 /path/to/ParaView-5.6.0-osmesa-MPI-Linux-64bit/bin/pvpython
/path/to/ParaView-5.6.0-osmesa-MPI-Linux-64bit/lib/python2.7/site-packages/paraview/benchmark/manyspheres.py 
Generating bounding box
Generating all spheres
Assigning colors
  source 0: generating 100 spheres from 0 to 100
Repositioning initial camera
Rendering first frame
SWR detected AVX2 instruction support (using: libswrAVX2.so).
../../source/master/src/gallium/drivers/swr/rasterizer/core/ringbuffer.h(45):
ASSERT: ((1ULL << 32) % numEntries) == 0
        Init
        400 is not evenly divisible into 2 ^ 32.  Wrap errors will occur!
Trace/breakpoint trap (core dumped)


Note that the same test works correctly for both llvm pipe and SWR wnen using
the gallium-xlib GLX implementation.  This only fails for swr and OSMesa</pre>
        </div>
      </p>


      <hr>
      <span>You are receiving this mail because:</span>

      <ul>
          <li>You are the QA Contact for the bug.</li>
          <li>You are the assignee for the bug.</li>
      </ul>
    </body>
</html>