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

            Bug ID: 110716
           Summary: SWR doesn't work with OSMesa
           Product: Mesa
           Version: unspecified
          Hardware: Other
                OS: Linux (All)
            Status: NEW
          Severity: blocker
          Priority: medium
         Component: Drivers/Gallium/swr
          Assignee: mesa-dev@lists.freedesktop.org
          Reporter: chuck.atk...@kitware.com
        QA Contact: mesa-dev@lists.freedesktop.org

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
https://www.paraview.org/download/

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

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

Reply via email to