[Mesa-dev] [RFC] New gallium flags for using different contexts in several threads

Axel Davy axel.davy at ens.fr
Sun Dec 18 12:38:03 UTC 2016


Currently there is no real specification on what is allowed for
using different contexts in several threads, or when you
map/unmap a resource in a thread, but uses it in another for
draw calls.

For the gallium nine CSMT patchset, I've figured out it would be better
to add flags to describe what is allowed.

Please comment.

Yours,

Axel Davy

Axel Davy (3):
  gallium: add PIPE_CAP_THREAD_SAFE
  radeon: enable PIPE_CAP_THREAD_SAFE
  gallium: add flag for transfers in a different context than draw call

 src/gallium/docs/source/screen.rst               | 12 ++++++++++++
 src/gallium/drivers/freedreno/freedreno_screen.c |  2 ++
 src/gallium/drivers/i915/i915_screen.c           |  2 ++
 src/gallium/drivers/ilo/ilo_screen.c             |  2 ++
 src/gallium/drivers/llvmpipe/lp_screen.c         |  2 ++
 src/gallium/drivers/nouveau/nv30/nv30_screen.c   |  2 ++
 src/gallium/drivers/nouveau/nv50/nv50_screen.c   |  2 ++
 src/gallium/drivers/nouveau/nvc0/nvc0_screen.c   |  2 ++
 src/gallium/drivers/r300/r300_screen.c           |  2 ++
 src/gallium/drivers/r600/r600_pipe.c             |  2 ++
 src/gallium/drivers/radeonsi/si_pipe.c           |  2 ++
 src/gallium/drivers/softpipe/sp_screen.c         |  2 ++
 src/gallium/drivers/svga/svga_screen.c           |  2 ++
 src/gallium/drivers/swr/swr_screen.cpp           |  2 ++
 src/gallium/drivers/vc4/vc4_screen.c             |  2 ++
 src/gallium/drivers/virgl/virgl_screen.c         |  2 ++
 src/gallium/include/pipe/p_defines.h             |  3 +++
 17 files changed, 45 insertions(+)

-- 
2.11.0



More information about the mesa-dev mailing list