| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
radeon_context now contains a gl_context, rather than a pointer to one.
This will allow some minor core Mesa clean-up.
|
| |
|
|
|
|
|
|
|
| |
v2: replace instances in dri/common/ dirs
Reviewed-by: Matt Turner <[email protected]>
Reviewed-by: Kenneth Graunke <[email protected]>
|
|
|
|
| |
Signed-off-by: Alex Deucher <[email protected]>
|
|
|
|
| |
DRI2 is always enabled now.
|
|
|
|
| |
This makes LOCK_HARDWARE empty, so it goes away.
|
| |
|
| |
|
|
|
|
|
|
| |
If flush happens inside radeonRefillCurrentMaRegion the last dma buffer would
be unmapped twice. Unmapping buffer when moving buffer to wait list fixes the
mapping error.
|
|
|
|
|
|
|
|
|
|
| |
DMA buffers are often remapped many times for singel cs. To reduce number of
mapping calls ending to kernel dma buffers are mapped when allocated and unmapped
when full or in cs flush. This makes indifual mapping calls in other parts of
code simple increment/decrement reference count which is faster than entering
kernel.
This improves Anholt's openarena benchmark from 36 fps to 44 fps.
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Conflicts:
src/gallium/drivers/svga/svga_screen_texture.c
src/gallium/state_trackers/xorg/xorg_composite.c
src/gallium/state_trackers/xorg/xorg_exa.c
src/gallium/state_trackers/xorg/xorg_renderer.c
src/gallium/state_trackers/xorg/xorg_xv.c
src/mesa/main/texgetimage.c
src/mesa/main/version.h
|
| |
| |
| |
| |
| |
| | |
This reverts commit 284a7af274bc148f112bd0ebb40583923ee26b49.
This breaks kde desktop effects. See fdo bug 24131
|
| |
| |
| |
| |
| |
| |
| | |
We can get a lot of swtcl bo allocations - need to probably abstract
this a bit further.
Signed-off-by: Dave Airlie <[email protected]>
|
|/
|
|
|
|
|
|
|
|
| |
This moves the bo mapping outside the DMA layer and makes it explicit,
this should in theory make it simpler to split the clean up the dma/cmdbuf
linkage that I created before that is broken.
Tested on: r600, rv380 (tcl/no-tcl), rv200 (tcl/no-tcl)
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
| |
This should help detecting possible memory leaks with dma buffers and prevent
possible visual corruption if data would be overwriten too early.
|
|
|
|
|
| |
dma_bo varaible is only used for iterating so allocating memory for it only
causes memory leaks.
|
|
|
|
|
|
| |
Converted r100 to use shared debug code with sed and fast compile check. New
code has compability layer so old debugging code doesn't have to be changed
all immidiatly.
|
|
|
|
|
|
| |
Problem was to find the correct place to run prediction. Only place that is
called for every primitive is ALLOC_VERTS so we have to do prediction there
before allocation.
|
|
|
|
|
| |
We were check command buffer sizes too alte so allocated dma regions
were freed before relocations so space checking failed.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| |
| | |
r600_state_predict
Conflicts:
src/mesa/drivers/dri/r300/r300_cmdbuf.c
src/mesa/drivers/dri/radeon/radeon_cmdbuf.h
|
| |
| |
| |
| |
| |
| | |
This makes sure that objects are leaving wait list only when they are processed by gpu.
Signed-off-by: Pauli Nieminen <[email protected]>
|
| |
| |
| |
| | |
Trying to make understanding code easier with small refactoring and renaming.
|
|/
|
|
|
|
|
|
| |
- emit prediction
- fixes to emit_sizes for data
- clean up of excesive use of radeonEnsureCmdBufferSpace
Signed-off-by: Pauli Nieminen <[email protected]>
|
| |
|
|
|
|
|
|
| |
This fixes problem that dma buffers were leaking in dri1 mode.
Signed-off-by: Pauli Nieminen <[email protected]>
|
| |
|
|
|
|
| |
Signed-off-by: Pauli Nieminen <[email protected]>
|
|
|
|
|
|
| |
This fixes problems when application is using large vertex arrays for drawing.
Signed-off-by: Pauli Nieminen <[email protected]>
|
|
|
|
|
| |
In radeonRefillCurrentDmaRegion() make sure we
unmap the previous buffer.
|
|
|
|
|
|
|
| |
This allows us to return the unused portion of the dma buffer
to the allocator instead of wasting nearly 16k a pop.
Cherry picked and ported to new code by Pauli.
|
|
|
|
|
|
|
|
|
|
| |
We keep dma buffer objects in list untill they have been unused for many
draw operations. Current limit of having 100 flushes is just guess for
good performance/memory trade off.
Moving WARN_ONCE macro to common context because it is used in multiple drivers.
Signed-off-by: Pauli Nieminen <[email protected]>
|
|
|
|
|
| |
This stuff was a vestige of the r600 bring up and
now mostly serves to periodically break the build.
|
| |
|
| |
|
|\
| |
| |
| |
| |
| |
| | |
into r6xx-rewrite
This builds, but I get an assertion in radeonGetLock() due to
the drawable being null.
|
| | |
|
| |
| |
| |
| |
| | |
This moves a big chunk of the space checking code into libdrm so
it can be shared by the DDX.
|
| |
| |
| |
| |
| |
| | |
This reverts commit 0952645fe04a27968565ea4d913500c23b1b11e3.
Need to revisit where this is going wrong
|
| |
| |
| |
| |
| | |
This allows us to return the unused portion of the dma buffer
to the allocator instead of wasting nearly 16k a pop.
|
|\| |
|
| |
| |
| |
| |
| | |
Revalidate can trigger flushing and dma buffer deallocation,
so retry allocation on such case.
|
| | |
|
| | |
|
|/ |
|
|
|
|
|
|
|
|
|
| |
This fixes up the buffer validation scheme, so that we keep a list
of buffers to validate so cmdbuf flushes during a pipeline get
all the buffers revalidated on the next emit.
This also fixes radeonFlush to not flush unless we have something
useful to send to the GPU, like a DMA buffer or something not state
|
|
|
|
|
| |
Context destruction was nearly the same over all the drivers,
so collapse it down.
|
| |
|