summaryrefslogtreecommitdiffstats
path: root/src/gallium/auxiliary/pipebuffer
Commit message (Collapse)AuthorAgeFilesLines
* pipebuffer: More detailed description of bufer over-/undereflows.José Fonseca2008-07-201-15/+34
|
* pb: buffer over/underflows are errors.José Fonseca2008-07-131-2/+2
|
* gallium: fix logic in pb_check_usage()Brian Paul2008-07-091-1/+1
|
* pipebuffer: Silent warnings.José Fonseca2008-07-031-0/+4
| | | | Although rarely hit in normal apps, they are too noisy with test suites.
* pipebuffer: Debug buffer manager to detect buffer under- and overflows.José Fonseca2008-07-024-1/+309
| | | | It should detect both cpu and gpu buffer overflows.
* pipebuffer: Verify usage flag consistency. Minor cleanups.José Fonseca2008-07-028-17/+43
|
* pb: don't assert(0) on failure to allocate - this is a normal condition in ↵Keith Whitwell2008-06-121-1/+0
| | | | many drivers
* pipebuffer: Fix improper memory free.José Fonseca2008-06-121-1/+1
|
* pipebuffer: Alternative buffer manager.José Fonseca2008-06-104-0/+108
| | | | | For situations where one has a reserve memory pool, or a faster/slower pool.
* pipebuffer: Be more lenient when matching cached buffer sizes.José Fonseca2008-06-101-2/+5
| | | | Reuse cached buffers up to twice as big a requested.
* pipebuffer: Malloc buffer provider.José Fonseca2008-05-272-1/+41
| | | | Simple wrapper around pb_malloc_buffer_create for convenience.
* pipebuffer: Allow slab allocations of buffers of inequal size.José Fonseca2008-05-271-2/+2
|
* pipebuffer: More robust face null pointers.José Fonseca2008-05-221-1/+12
| | | | | | It is really the caller responsibility not to call pipebuffer with null buffers, etc. But don't let the crash happen here, and still asserting early.
* pipebuffer: Don't retry allocating in slab suballocator.José Fonseca2008-05-221-18/+5
| | | | | | In pipebuffer, fencing is done at on a level above sub-allocation, so no matter how many times slab allocator retries no buffer will be freed. The pipebuffer fencing implemention already retries allocating.
* gallium: Don't serialize GPU writes.José Fonseca2008-05-091-50/+50
| | | | | | | Only make sure the GPU is finished with a buffer before mapping. The opposite -- waiting for the CPU to be finished before handing to the CPU -- must be done before fencing.
* pipebuffer: Temporarily reimplement validation as growable array.José Fonseca2008-05-091-65/+48
| | | | Jose
* gallium: Make sure functions have proper prototypes and remove unused variable.Michel Dänzer2008-05-082-2/+2
|
* pipebuffer: Preliminary buffer validation.José Fonseca2008-05-084-0/+263
| | | | | | | Use table to store a list of buffers to validate. Unfortunately cso_hash shrinks/regrows the hash every time, so still has to be addressed. Multi-thread validation is still WIP.
* pipebuffer: Don't include standard headers directly.José Fonseca2008-05-081-2/+2
|
* pb: remove unused variable, squash warningKeith Whitwell2008-04-281-2/+0
|
* pipebuffer: Be extra cautious with the incoming buffers.José Fonseca2008-04-271-3/+17
| | | | | A common mistake is trying to fence user or malloc buffers. So don't let the crash happen inside pipebuffer lib.
* gallium: Windows user mode portability fixes.José Fonseca2008-04-251-4/+7
|
* pipebuffer: New function to flush the buffer cache.José Fonseca2008-04-242-3/+12
|
* pipebuffer: Temporarily allow simultaneous CPU writes.José Fonseca2008-04-221-1/+17
| | | | Also, fast path for re-fencing the same buffer multiple times with the same fence.
* gallium: Fix seg fault (James Vogt).José Fonseca2008-04-151-2/+6
|
* gallium: Several fixes to buffer caching.José Fonseca2008-04-153-25/+68
|
* gallium: Allow to use a single slab.José Fonseca2008-04-152-128/+209
| | | | | We often want to use a pool of equally sized buffers, so this makes the slab suballocator a drop-in replacement.
* gallium: Serialize buffers writes.José Fonseca2008-04-151-5/+76
| | | | | Allow concurrent reads from buffers by the CPU/GPU, but serialize all writes.
* gallium: Buffer cache.José Fonseca2008-04-134-3/+318
|
* gallium: Initial port of Thomas slab suballocator to pipebuffer.José Fonseca2008-04-134-0/+440
| | | | | | | | Not tested yet -- just compiles. This includes only the slab algorithm. Fencing is already implemented in pb_bufmgr_fence and time-based caching will be commited in a separate module shortly.
* gallium: Fix overzealous assert.José Fonseca2008-04-081-1/+5
|
* gallium: Keep fenced buffers list ordered.José Fonseca2008-04-051-53/+99
| | | | This allows to keep the list small without the overhead of full walks.
* gallium: Fix typo.José Fonseca2008-04-051-1/+1
|
* gallium: Do not assume that buffers are freed in the same order they are fenced.José Fonseca2008-04-011-18/+21
| | | | | | | | Also free buffers as soon as possible. This short term fix corrects the fenced list behavior but it will impact on performance. The long term fix is probably replace the linked list (legacy from the bufpool code) by a binary tree.
* gallium: Make headers C++ friendly.José Fonseca2008-02-273-3/+30
|
* gallium: MSVC fixes.José Fonseca2008-02-241-0/+2
|
* Bring in several forgotten MSVC fixes.José Fonseca2008-02-232-2/+3
|
* Remove src/mesa and src/mesa/main from gallium source include paths.José Fonseca2008-02-194-97/+3
|
* Simplify makefile boilerplate code.José Fonseca2008-02-191-7/+1
| | | | | Don't define ASM_SOURCES variable globally -- reserve that variable to be defined locally by makefiles, together with C_SOURCES and CPP_SOURCES.
* Move mm.c code into util module.José Fonseca2008-02-191-301/+1
| | | | | Using the u_ prefix to distingish the c source files that support gallium interfaces and those that have really no relation with gallium itself.
* Standardize on using the pipe/ include prefix.José Fonseca2008-02-184-16/+16
|
* Update scons build for new code layout.José Fonseca2008-02-181-0/+14
|
* Code reorganization: s/aux/auxiliary/.José Fonseca2008-02-1511-0/+2167
"aux" is a reserved name on Windows (X_X)