mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-06-16 17:38:20 +02:00
v2: lots of improvements
This is like identity or trace, but simpler. It doesn't wrap most states.
Run with:
GALLIUM_DDEBUG=1000 [executable]
where "executable" is the app and "1000" is in miliseconds, meaning that
the context will be considered hung if a fence fails to signal in 1000 ms.
If that happens, all shaders, context states, bound resources, draw
parameters, and driver debug information (if any) will be dumped into:
/home/$username/dd_dumps/$processname_$pid_$index.
Note that the context is flushed after every draw/clear/copy/blit operation
and then waited for to find the exact call that hangs.
You can also do:
GALLIUM_DDEBUG=always
to do the dumping after every draw/clear/copy/blit operation without
flushing and waiting.
Examples of driver states that can be dumped are:
- Hardware status registers saying which hw block is busy (hung).
- Disassembled shaders in a human-readable form.
- The last submitted command buffer in a human-readable form.
v2: drop pipe-loader changes, drop SConscript
rename dd.h -> dd_pipe.h
Acked-by: Christian König <christian.koenig@amd.com>
Acked-by: Alex Deucher <alexander.deucher@amd.com>
187 lines
2.9 KiB
Makefile
187 lines
2.9 KiB
Makefile
SUBDIRS =
|
|
|
|
##
|
|
## Gallium auxiliary module
|
|
##
|
|
|
|
SUBDIRS += auxiliary
|
|
|
|
##
|
|
## Gallium pipe drivers and their respective winsys'
|
|
##
|
|
|
|
SUBDIRS += \
|
|
drivers/ddebug \
|
|
drivers/noop \
|
|
drivers/trace \
|
|
drivers/rbug
|
|
|
|
## freedreno/msm/kgsl
|
|
if HAVE_GALLIUM_FREEDRENO
|
|
SUBDIRS += drivers/freedreno winsys/freedreno/drm
|
|
endif
|
|
|
|
## i915g/i915
|
|
if HAVE_GALLIUM_I915
|
|
SUBDIRS += drivers/i915 winsys/i915/drm
|
|
endif
|
|
|
|
## ilo/i965
|
|
if HAVE_GALLIUM_ILO
|
|
SUBDIRS += drivers/ilo winsys/intel/drm
|
|
endif
|
|
|
|
## nouveau
|
|
if HAVE_GALLIUM_NOUVEAU
|
|
SUBDIRS += drivers/nouveau winsys/nouveau/drm
|
|
endif
|
|
|
|
## vmwgfx/svga
|
|
if HAVE_GALLIUM_SVGA
|
|
SUBDIRS += drivers/svga winsys/svga/drm
|
|
endif
|
|
|
|
## r300
|
|
if HAVE_GALLIUM_R300
|
|
SUBDIRS += drivers/r300
|
|
endif
|
|
|
|
## radeon - linked into r600 and radeonsi
|
|
if HAVE_GALLIUM_RADEON_COMMON
|
|
SUBDIRS += drivers/radeon
|
|
endif
|
|
|
|
## r600
|
|
if HAVE_GALLIUM_R600
|
|
SUBDIRS += drivers/r600
|
|
endif
|
|
|
|
## radeonsi
|
|
if HAVE_GALLIUM_RADEONSI
|
|
SUBDIRS += drivers/radeonsi
|
|
SUBDIRS += winsys/amdgpu/drm
|
|
endif
|
|
|
|
## the radeon winsys - linked in by r300, r600 and radeonsi
|
|
if NEED_RADEON_DRM_WINSYS
|
|
SUBDIRS += winsys/radeon/drm
|
|
endif
|
|
|
|
## swrast/softpipe
|
|
if HAVE_GALLIUM_SOFTPIPE
|
|
SUBDIRS += drivers/softpipe
|
|
|
|
## swrast/llvmpipe
|
|
if HAVE_GALLIUM_LLVMPIPE
|
|
SUBDIRS += drivers/llvmpipe
|
|
endif
|
|
endif
|
|
|
|
## vc4/rpi
|
|
if HAVE_GALLIUM_VC4
|
|
SUBDIRS += drivers/vc4 winsys/vc4/drm
|
|
endif
|
|
|
|
## the sw winsys'
|
|
SUBDIRS += winsys/sw/null
|
|
|
|
if NEED_WINSYS_XLIB
|
|
SUBDIRS += winsys/sw/xlib
|
|
endif
|
|
|
|
if HAVE_DRISW
|
|
SUBDIRS += winsys/sw/dri
|
|
endif
|
|
|
|
if HAVE_DRI2
|
|
SUBDIRS += winsys/sw/kms-dri
|
|
endif
|
|
|
|
SUBDIRS += winsys/sw/wrapper
|
|
|
|
##
|
|
## Don't forget to bundle the remaining (non autotools) winsys'
|
|
##
|
|
|
|
EXTRA_DIST = \
|
|
docs \
|
|
README.portability \
|
|
SConscript \
|
|
winsys/sw/gdi \
|
|
winsys/sw/hgl
|
|
|
|
|
|
##
|
|
## Gallium state trackers and their users (targets)
|
|
##
|
|
|
|
if HAVE_LOADER_GALLIUM
|
|
SUBDIRS += targets/pipe-loader
|
|
endif
|
|
|
|
if HAVE_CLOVER
|
|
SUBDIRS += state_trackers/clover targets/opencl
|
|
endif
|
|
|
|
if HAVE_DRICOMMON
|
|
SUBDIRS += state_trackers/dri targets/dri
|
|
endif
|
|
|
|
if HAVE_X11_DRIVER
|
|
SUBDIRS += state_trackers/glx/xlib targets/libgl-xlib
|
|
endif
|
|
|
|
if HAVE_ST_OMX
|
|
SUBDIRS += state_trackers/omx targets/omx
|
|
endif
|
|
|
|
if HAVE_GALLIUM_OSMESA
|
|
SUBDIRS += state_trackers/osmesa targets/osmesa
|
|
endif
|
|
|
|
if HAVE_ST_VA
|
|
SUBDIRS += state_trackers/va targets/va
|
|
endif
|
|
|
|
if HAVE_ST_VDPAU
|
|
SUBDIRS += state_trackers/vdpau targets/vdpau
|
|
endif
|
|
|
|
if HAVE_ST_XA
|
|
SUBDIRS += state_trackers/xa targets/xa
|
|
endif
|
|
|
|
if HAVE_ST_XVMC
|
|
SUBDIRS += state_trackers/xvmc targets/xvmc
|
|
endif
|
|
|
|
if HAVE_ST_NINE
|
|
SUBDIRS += state_trackers/nine targets/d3dadapter9
|
|
endif
|
|
|
|
##
|
|
## Don't forget to bundle the remaining (non autotools) state-trackers/targets
|
|
##
|
|
|
|
EXTRA_DIST += \
|
|
include \
|
|
state_trackers/README \
|
|
state_trackers/wgl targets/libgl-gdi \
|
|
targets/graw-gdi targets/graw-null targets/graw-xlib \
|
|
state_trackers/hgl targets/haiku-softpipe \
|
|
tools
|
|
|
|
|
|
##
|
|
## Gallium tests
|
|
##
|
|
|
|
if HAVE_GALLIUM_TESTS
|
|
SUBDIRS += \
|
|
tests/trivial \
|
|
tests/unit
|
|
endif
|
|
|
|
EXTRA_DIST += \
|
|
tests/graw \
|
|
tests/python
|