• Home
  • History
  • Annotate
  • only in /external/mesa3d/src/gallium/auxiliary/pipebuffer/
History log of /external/mesa3d/src/gallium/auxiliary/pipebuffer/
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
168a3b8627861fbb2786839f7e276de82f883e42 18-Apr-2012 Brian Paul <brianp@vmware.com> pipebuffer: split up assertion

The problem with assert(a && b) is you don't know which term is zero
when there's a failure.
b_bufmgr_debug.c
037e7a68f504f019b409ec8cb92f0075019a90f5 31-Oct-2011 Thomas Hellstrom <thellstrom@vmware.com> pipebuffer/debug: Fix a recursive mutex lock

pb_debug_manager_dump was trying to take a lock already
held by all callers.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Signed-off-by: Jos� Fonseca <jfonseca@vmware.com>
b_bufmgr_debug.c
39d7de69b1e3317ba813b4475f2b6132d70f8eef 08-Oct-2011 Marek Olšák <maraeo@gmail.com> pb_bufmgr_cache: flush cache when create_buffer fails and try again

NOTE: This is a candidate for the stable branches.
b_bufmgr_cache.c
4682e706012fe26627a2f827db01b5068cc62814 11-Sep-2011 Marek Olšák <maraeo@gmail.com> pb_buffer: inline 'base' sub-struct
b_buffer.h
b_buffer_fenced.c
b_buffer_malloc.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
7cb17862c6a5690fbe88508cbb772ba92373292f 06-Mar-2011 José Fonseca <jose.r.fonseca@gmail.com> pb: Add is_buffer_busy for malloc buffers.
b_buffer_malloc.c
49579a4df8f9f85139a02c95ae59ea0a5dec663c 13-Feb-2011 Marek Olšák <maraeo@gmail.com> pb_bufmgr_cache: add is_buffer_busy hook and use it instead of non-blocking map

This is cleaner and implementing the hook is optional.
b_bufmgr.h
b_bufmgr_cache.c
834cde584466622bd76616c0e6222e1e87e12e20 05-Nov-2010 Jakob Bornecrantz <jakob@vmware.com> scons: Remove old pipebuffer SConscript
Conscript
bf21b7006c63c3dc47045c22d4f372dfe6c7ce67 05-Oct-2010 Dave Airlie <airlied@redhat.com> pb: fix numDelayed accounting

we weren't decreasing when removing from the list.
b_bufmgr_cache.c
49866c8f34579420a30c33f76cfb2d77bafcdf0a 05-Oct-2010 Dave Airlie <airlied@redhat.com> pb: don't keep checking buffers after first busy

If we assume busy buffers are added to the list in order its unlikely
we'd fine one after the first busy one that isn't busy.
b_bufmgr_cache.c
67763488b1fea01d6eb1c7d9e05ecb175918c3af 12-Sep-2010 José Fonseca <jfonseca@vmware.com> pb: Fix the build, and add notes.
b_buffer_malloc.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b5fcf0c8e07e666523b007fab1d0fc18c2c89241 28-Aug-2010 Dave Airlie <airlied@redhat.com> pb: add void * for flush ctx to mapping functions

If the buffer we are attempting to map is referenced by the unsubmitted
command stream for this context, we need to flush the command stream,
however to do that we need to be able to access the context at the lowest
level map function, currently we set the buffer in the toplevel map, but this
racy between context. (we probably have a lot more issues than that.)

I'll look into a proper solution as suggested by jrfonseca when I get some time.
b_buffer.h
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
7822f99193cd26558bff29ff8d6d23db2d3a1048 26-Aug-2010 Vinson Lee <vlee@vmware.com> pipebuffer: Clean up header file inclusion in pb_bufmgr.h.

Remove p_compiler.h and p_defines.h.
Include pb_buffer.h for pb_size symbol.
b_bufmgr.h
287c94ea4987033f9c99a2f91c5750c9083504ca 10-Apr-2010 Keith Whitwell <keithw@vmware.com> Squashed commit of the following:

commit 0189cb2fde9f5d7326fd4bfbc2e52db4cce73b3e
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Apr 10 12:48:43 2010 +0100

gallium: don't use generic get_transfer func for textures

It doesn't know and can't fill in the stride value.

commit 65bc6f88fd9ce8ff90175b250e580bef2739ea35
Author: Chia-I Wu <olv@lunarg.com>
Date: Sat Apr 10 13:49:34 2010 +0800

i915g: Initialize screen surface function.

commit eb56e64986790aa2fa35534ce652b78656b0c3c5
Merge: f8b0a7f e7f1e5c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Apr 10 00:38:43 2010 +0100

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/r300/r300_texture.c

commit f8b0a7f6a3a98fd36ce90a81073ec8c8f09b684c
Merge: a3c9980 f43c679
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Apr 10 00:35:09 2010 +0100

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/r300/r300_texture.c

commit a3c99807de37dc2c072f1d75ed3a11da333bc9a1
Author: unknown <michal@.(none)>
Date: Fri Apr 9 18:51:39 2010 +0200

scons: Add missing sources.

commit 927cec79cedb457efa9e6f335727cfcb8e4908e2
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 18:07:56 2010 +0200

gallium: fix another compile warning after merge. Hmpf.

commit 52953cd7b0e51deafecb812bdc40f9e45f9ac62a
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 18:02:11 2010 +0200

gallium: fix comment

commit 7c8763aa6cfc74adf1ea49c2bab25ca17b32575f
Author: unknown <michal@.(none)>
Date: Fri Apr 9 18:05:20 2010 +0200

util: Fix type cast.

commit 9d0086411a104b7cc9297aac0d1f82853118d7bf
Author: unknown <michal@.(none)>
Date: Fri Apr 9 18:04:33 2010 +0200

libgl-gdi: Use proper unwrap functions for resources.

commit 251a5cdd18ba31c690ef61f133dfc65cd4a45cf8
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 17:51:23 2010 +0200

gallium: more comments fixup

commit 8f3f9d5e1e9c0de98a3dfb19e81250d2c32ee4e9
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 17:48:18 2010 +0200

gallium: another fix after merge

commit 41f00a32ee5be91512c048bacb89ede0e04bc08d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 17:44:30 2010 +0200

gallium: more pipe_texture/resource fixes after merge

commit faf53328d1154c51d8a59513f2bfcae62272b0bf
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 17:44:24 2010 +0200

gallium: fix comments for changed USAGE flags

commit fdcb17bea4b0798d316b56deea69832f41142adf
Author: Roland Scheidegger <sroland@vmware.com>
Date: Fri Apr 9 16:40:07 2010 +0200

gallium/pb: pb uses PB_USAGE_ flags, not PIPE_TRANSFER_ (same value anyway)

commit c95f7278ecc6db417ec1053279f2a8172c47aee9
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:44:35 2010 +0100

llvmpipe: fix merge glitches

commit 28f8b8683175149a381be5eff263d4c20568bce7
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:41:39 2010 +0100

r300g: update after merge for pipe_resources

commit 248c93cbc066ba6e3fadd94c5fcf3bdbb373d8fd
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:41:20 2010 +0100

st/mesa: fix old pipe_texture usages

commit a563b1c5c2cb57b3ef28a3654d9b477460d13ced
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:40:56 2010 +0100

r300g: remove unused variable

commit 734500131d828c9dfd68c5fa26b3e6b07e086d2d
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:40:36 2010 +0100

nv50: fix compiler warning

commit efd402e13037e5c3e29759fa5b1c754c6d65d0e2
Merge: fec8a1d 5452615
Author: Keith Whitwell <keithw@vmware.com>
Date: Fri Apr 9 13:33:57 2010 +0100

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/cell/ppu/cell_screen.c
src/gallium/drivers/cell/ppu/cell_texture.c
src/gallium/drivers/llvmpipe/lp_screen.c
src/gallium/drivers/r300/r300_context.c
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r300/r300_screen.c
src/gallium/drivers/r300/r300_state.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/drivers/r300/r300_transfer.c
src/gallium/state_trackers/egl/common/egl_g3d.h
src/gallium/state_trackers/egl/kms/native_kms.c
src/gallium/state_trackers/egl/x11/native_dri2.c
src/gallium/state_trackers/egl/x11/native_ximage.c

commit fec8a1db13fac04ef56f6ece799d1f20aa3011db
Author: Marek Olšák <maraeo@gmail.com>
Date: Sat Apr 3 07:58:34 2010 +0200

util: fix assertion failures in pipe_buffer_flush_mapped_range

commit 1ff3984c2edce9927744f3cce3e7b07778990170
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 8 17:44:54 2010 +0200

docs: fix transfer_map description

commit 20bf14be8ac6438cb1afa38212e306fc06a5ed40
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Apr 8 14:39:13 2010 +0100

util: fix up several uses of pipe_map_buffer_range

This function used to return a pointer to where the start of the
actual buffer would have been, even though only the requested range is
being mapped.

In the resources change, the function was modified to use a transfer
internally, and started returning the pointer to the beginning of the
transfer, ie the mapped range.

Some users of the function were changed to reflect this new behaviour,
some were not. Since then the function has reverted to its original
behaviour, matching master.

This change restores some of the users of the map_buffer_range helper
to expect the old/original behaviour.

commit 33179a86058b68b518f40971030db337dc26fe6e
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Apr 8 14:38:54 2010 +0100

mesa/st: fix up several uses of pipe_map_buffer_range

This function used to return a pointer to where the start of the
actual buffer would have been, even though only the requested range is
being mapped.

In the resources change, the function was modified to use a transfer
internally, and started returning the pointer to the beginning of the
transfer, ie the mapped range.

Some users of the function were changed to reflect this new behaviour,
some were not. Since then the function has reverted to its original
behaviour, matching master.

This change restores some of the users of the map_buffer_range helper
to expect the old/original behaviour.

commit 3f5363d4dc9d7ad48467ae82d58d5f3d9bd10698
Author: Keith Whitwell <keithw@vmware.com>
Date: Wed Apr 7 17:26:52 2010 +0100

util: map_range and flush_range have offsets relative to start of buffer

commit 7eb1bfb97a790c73188d6b616d54fb3849e69b1e
Author: Keith Whitwell <keithw@vmware.com>
Date: Wed Apr 7 17:26:08 2010 +0100

nv50: fix compiler warning

commit d040daff0642dd791ac38e9b353dc251b03fc873
Author: Keith Whitwell <keithw@vmware.com>
Date: Wed Apr 7 17:25:58 2010 +0100

nvfx: fix compiler warning

commit 49ec01dffb8e99ab3ff8f856287db7b4df3efed6
Author: Chia-I Wu <olv@lunarg.com>
Date: Mon Apr 5 11:58:53 2010 +0800

mesa/es: Fixes for gallium-resources.

commit 47c87ada452be45766928a01b6d69da63e3a5f5e
Author: Marek Olšák <maraeo@gmail.com>
Date: Sat Apr 3 05:19:20 2010 +0200

r300g: fix transfers for textures created from winsys handles

commit 5f2701fddaef9c18d85c049311c2819c49cc1ae0
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Sat Apr 3 03:52:38 2010 +0200

nouveau: don't use the staging usage

Maybe it could make sense, but for now dynamic is enough.

None of these avoid uncached reads from GART on AGP cards.

commit 0db20fa49e008f35911007fa7ed9be1d678a2161
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Sat Apr 3 03:27:19 2010 +0200

i965: add brw_resource.c to Makefile

commit b94f3e7389cbd1b6465de3c04e8059ce73f1ea1f
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Sat Apr 3 01:48:33 2010 +0200

nouveau: fix for gallium-resources

commit a01ff99a19986e6beb7903431e60a074945b09bc
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 19:26:35 2010 +0200

gallium: fix missing includes

commit 26aeded562ce947a6deeb867fe22bf8daf7b1a1a
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 19:19:18 2010 +0200

gallium: remove video interface and related stuff

These interfaces weren't quite was needed, and building disabled for a while.
Some code actually build since some branch merge, and were now not fully
converted to gallium-resources.
See http://www.mail-archive.com/mesa3d-dev@lists.sourceforge.net/msg09619.html
for a discussion of this. Video related work is done in origin/pipe-video
branch.

commit c64285aea45997a276fb141d7badc8a04f617c7c
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 18:45:54 2010 +0200

python: fixes for resource changes

doesn't look quite ok yet, but sort of compiles.

commit 03d4d5a41f5cf158a358fd705c695e1c987a328f
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 18:34:46 2010 +0200

gallium: s/u_box_orgin_2d/u_box_origin_2d

commit 2444f023142bcaf7bd310b44794580f273254408
Author: Marek Olšák <maraeo@gmail.com>
Date: Thu Apr 1 03:26:50 2010 +0200

r300g: fix segfault when the transfers functions are used

Still broken.

commit 6f09bf4066ab651b323c131bb07978e700519805
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 00:05:12 2010 +0200

r300g: compile fixes

commit 76711ff40d2092f9ef03d452de7458c4e76d9246
Author: Roland Scheidegger <sroland@vmware.com>
Date: Thu Apr 1 00:04:47 2010 +0200

nvfx: more compile fixes

commit c5d2e90c9cc119447a447dc04a4bce4ab91fc671
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Mar 31 23:18:50 2010 +0200

gallium: more mostly merge fallout fixes...

commit fbc3722696790857f4adc936190406e74dffd969
Merge: 86d9225 d97f696
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Mar 31 22:09:35 2010 +0200

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/cell/ppu/cell_screen.c
src/gallium/drivers/i915/i915_buffer.c
src/gallium/drivers/i915/i915_context.h
src/gallium/drivers/i915/i915_resource_texture.c
src/gallium/drivers/i915/i915_screen.c
src/gallium/drivers/i915/i915_state_emit.c
src/gallium/drivers/i965/brw_resource_texture.c
src/gallium/drivers/llvmpipe/lp_screen.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/nvfx/nv30_fragtex.c
src/gallium/drivers/nvfx/nv40_fragtex.c
src/gallium/drivers/nvfx/nvfx_miptree.c
src/gallium/drivers/nvfx/nvfx_screen.c
src/gallium/drivers/nvfx/nvfx_transfer.c
src/gallium/drivers/r300/r300_state.c
src/gallium/drivers/svga/svga_screen_texture.c
src/gallium/state_trackers/dri/common/dri_drawable.c
src/gallium/state_trackers/dri/common/dri_screen.c
src/gallium/state_trackers/dri/common/dri_st_api.h
src/gallium/state_trackers/dri/drm/dri1.c
src/gallium/state_trackers/dri/drm/dri1.h
src/gallium/state_trackers/dri/drm/dri2.c
src/gallium/state_trackers/python/st_device.c
src/gallium/state_trackers/python/st_sample.c
src/mesa/state_tracker/st_cb_clear.c
src/mesa/state_tracker/st_cb_drawpixels.c
src/mesa/state_tracker/st_cb_readpixels.c
src/mesa/state_tracker/st_cb_texture.c
src/mesa/state_tracker/st_extensions.c

commit 86d9225d19d194eebbbe95b059695697c3307d15
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Mar 31 19:06:06 2010 +0200

gallium: more fixes for bind changes

commit a215ef0606347e34669a580ec8df93ede7e46399
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Mar 31 18:48:36 2010 +0200

gallium/docs: some updates for bind changes

commit c6c7e6746cbc7af59f7972719ed76f43e8ac16fc
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 30 20:24:26 2010 +0200

gallium: more bind change compile fixes

commit a83fa1504b78180524a5eb454ae186741a27cdf8
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 30 17:37:13 2010 +0200

compile fixes

commit 30dc8afcd243d6a160571bac5f06d773e54a4196
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 30 16:56:28 2010 +0200

fix some merge issues

commit 30aa617fee11fe50c0a9c2f33fcd120a474f5e34
Merge: 1dde609 3a830bc
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 30 16:09:45 2010 +0200

Merge commit 'origin/gallium-buffer-usage-cleanup' into gallium-resources

Conflicts:
src/gallium/drivers/nouveau/nouveau_screen.c
src/gallium/drivers/nvfx/nvfx_transfer.c
src/gallium/winsys/drm/radeon/core/radeon_drm_buffer.c

commit 1dde609ad6c9d2dfa0a5f7167f3c5bcf023b7c4d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Wed Mar 24 02:35:00 2010 +0100

docs: some updates for pipe_resource

commit f236f9660d31b936f54b64ae07e569f8637067bd
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Wed Mar 24 01:31:28 2010 +0100

nvfx: fix for gallium-resources

It seems to work with basic applications but almost surely needs more work.

In particular, it probably shouldn't use PIPE_BUFFER_USAGE_* flags
and should use PIPE_TRANSFER_* in several places.

Also, we probably don't want the vtable indirect calls and that ought
to be replaced with something better instead.

commit 5a136ad7b63768cb9a753eff8686c44592e62325
Author: Luca Barbieri <luca@luca-barbieri.com>
Date: Wed Mar 24 01:31:19 2010 +0100

nv50: fix build in gallium-resources

Not actually tested.

Also needs next patch tee to actually build, this is just the nv50 part
split from the rest.

commit 3a830bc4a3f0f60c925b9434845a6bcad9a913c5
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 23 14:00:52 2010 -0700

st/egl: fix up for binding flags

commit c6a80dc32ef17bc972d4137ce7444ebed4d28ebb
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 23 13:52:15 2010 -0700

r300: restore 4k alignment for oqbo buffers

commit e75a8d5ea9e0ffcf67bc858e08937e10b4fc74ba
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 23 13:00:07 2010 -0700

gallium: bind flags

commit 1f5b509543a7f399835fd9edf27c18e1643fab7d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 19:32:21 2010 +0100

i965g: scons compile fixes

commit 2c385f8f905ec794d9119c05c6293e0b1b9b565a
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 19:20:33 2010 +0100

nouveau: drm compile fix

commit b285086ebd5132b47c340897c4622cc9fbd286cb
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 18:36:19 2010 +0100

r300g: pipe_resource compile fixes

bring back mistakenly deleted radeon_buffer.h
plus some more

commit 7810606f423ef2f51f0a14b919640c2fd2c931aa
Author: Michal Krol <michal@vmware.com>
Date: Tue Mar 23 16:21:03 2010 +0100

softpipe: Map GS constants, too.

commit 366f1176fb89d2b1978da6cfe60000b76bbc7338
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 15:51:52 2010 +0100

failover: update for pipe_resources

commit 615f44d70d293704ed821bc0b21fcfe6e363895d
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 15:51:02 2010 +0100

identity: remove double is_resource_reference assignment

commit 7008586020395905ddfff333d02b3893de369796
Author: Roland Scheidegger <sroland@vmware.com>
Date: Tue Mar 23 15:50:32 2010 +0100

trace: compile fix

commit 058c5697bda4c9cf7b49d26ee27a34586544efaa
Merge: dd7ba13 b33fd3c
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 23 06:40:39 2010 -0700

Merge commit 'origin/gallium-resources' into gallium-buffer-usage-cleanup

Conflicts:
src/gallium/state_trackers/vega/api_filters.c
src/mesa/state_tracker/st_cb_drawpixels.c

commit b33fd3ce3daf2921a895367d0ed3fd9c718a8575
Author: Michal Krol <michal@vmware.com>
Date: Mon Mar 22 21:03:26 2010 +0100

gallium: Usage parameter of get_transfer/transfer_inline_write is a bitfield.

commit 9c1162d9d656062a490a529997def3f674cc61fc
Author: Michal Krol <michal@vmware.com>
Date: Mon Mar 22 20:50:49 2010 +0100

scons: Update file lists after gallium-resources changes.

commit af9793ab9e5386b150d6b25c0d1978fdc67172e4
Author: Michal Krol <michal@vmware.com>
Date: Mon Mar 22 20:04:39 2010 +0100

gallium: Do not use `template` for formal parameter names.

commit dc2e12d714c444af9ff1acdd5a7e91408b116c99
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:41:34 2010 +0000

ws/nouveau: remove pipe_texture reference

commit b94c72329f1be85887d40d49b0586979da469d77
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:40:41 2010 +0000

ws/xlib: remove pipe_buffer reference in comment

commit 0a2af3eeae7de1d1cb433f0a2c35136b115f9920
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:39:34 2010 +0000

st/vega: clean up reference to pipe_texture

commit 437ce98daae46be5d532fbb04c7cbf4a503c1623
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:39:02 2010 +0000

st/python: begin conversion to pipe_resources, much more to do

commit 1b02e1ee3e5e87774f0c9e5f0e1898b7f8de1b16
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:29:34 2010 +0000

st/xorg: update for pipe_resources

commit eb39977fe7a1d9f0c3f4f2d4303a93c2c613cc3b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:23:51 2010 +0000

st/dri: update for pipe_resources

commit e447aeff597a4d8c0f5de25854c14c99f2cc138c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:23:36 2010 +0000

st/egl: update for pipe_resources

commit e4cc48da8fdbd7d521257a6d7cd10e6fc5aa1a65
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:08:44 2010 +0000

r300: drop use of R300 DONT SYNC flag

commit 129a83ab4d32e44ded5faea3f86ae5e1e62cddb6
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:08:17 2010 +0000

pipebuffer: use transfer flag

commit 575b35ee6b683d77095ef21c573c1de207107e79
Merge: f29ac73 9fc6c8b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 22:03:25 2010 +0000

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/r300/r300_context.c
src/gallium/drivers/r300/r300_texture.c
src/gallium/winsys/drm/radeon/core/radeon_buffer.h

commit f29ac73f3f626d5779a627b7fa6fecdb60a35aab
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 18:37:25 2010 +0000

cell: attempt to convert to pipe_resources

Can't even compile test this driver.

commit 484b1947f4af81bab60b41f21c3c23ea6f67488c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 17:25:50 2010 +0000

nvfx: restore usage of pipe_winsys

The interface that cannot be killed...

commit ac76ac6eb30f4f9aa9f5733d60358b357925953a
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 17:25:10 2010 +0000

nv50: fix warning

commit 9683f4423449fa5acf6c019c571223650473bd82
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 17:14:31 2010 +0000

util: restore u_simple_screen, nouveau still relies on it

commit 961cbcb62232689c959965384c6aa9b8eca697c1
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 16:51:54 2010 +0000

nouveau: convert nvfx and nv50 to pipe_resources

Compile tested only.

This was a deeper change than I was hoping for, due to the
layering of the pipe_texture implementation in each driver on
top of a shared pipe_buffer implementation in the shared code.

Have modified the shared code to act as a set of convenience
routines operating on nouveau_bo objects.

Each driver now uses the u_resource_vtbl technique to split the
implementation of pipe_resources between the existing miptree code
for textures and a new, minimal buffer implementation in each
driver.

Eventually these should be combined, not least because APIs are now
allowing things like binding buffer resources as textures and render
targets.

commit 18ba74016db13b23282f5033ee37b628a12ee566
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 10:02:54 2010 +0000

r300: fix compilation after merge

Also build r300 by default.

commit eb9c0175c8e4baca3fcb0b8364f83ceba9d74e0d
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 09:59:49 2010 +0000

st/vega: fix up after merge

commit ea8dd1d4ae7b58c9315c3491046ef3852ddd3377
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 09:59:44 2010 +0000

aux: remove unused piperesource helpers

commit be7af29d3ad1a10409b0ea689d882cf30a4e1d62
Merge: d22c2c6 12deb9e
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 21 09:54:53 2010 +0000

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/auxiliary/cso_cache/cso_context.c
src/gallium/auxiliary/cso_cache/cso_context.h
src/gallium/drivers/r300/r300_context.c
src/gallium/drivers/r300/r300_render.c
src/gallium/drivers/r300/r300_state.c
src/gallium/drivers/r300/r300_state_derived.c
src/gallium/state_trackers/vega/api_filters.c
src/gallium/state_trackers/vega/image.c
src/gallium/state_trackers/vega/image.h
src/gallium/state_trackers/vega/mask.c
src/gallium/state_trackers/vega/mask.h
src/gallium/state_trackers/vega/paint.c
src/gallium/state_trackers/vega/paint.h
src/gallium/state_trackers/vega/renderer.c
src/gallium/state_trackers/vega/renderer.h
src/gallium/state_trackers/vega/shader.c
src/gallium/state_trackers/vega/vg_context.h
src/gallium/state_trackers/vega/vg_tracker.c
src/mesa/state_tracker/st_manager.c

commit d22c2c6cb23a063e3334a165d0c5c3d73f05d234
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 20 11:48:54 2010 +0000

drm/r300: update for r300g pipe_resources conversion

Remove old files that related to pipe_buffers but weren't being
built. Hopefully this is correct.

commit f07b2c836958bee5796899123eca4ed05ac6242b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 20 11:47:03 2010 +0000

r300: convert to pipe_resources

Do a very shallow conversion - basically keeping the existing
buffer and texture code intact and using a vtbl struct
inside our resource struct to select between the two implementations.

The buffer and texture treatments could be further merged without
much effort, but try to keep the existing code working at this point.

commit feca9c3ca62daaf0d8745370106d4e3b22340c49
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 06:00:34 2010 +0000

gallium: update new merges to pipe_resource

commit 1cad983eac77a0c5333e6a3ce92b90ac87407714
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 06:00:19 2010 +0000

drm/sw: update new merges to pipe_resource

commit 191d39490ed792c569f98d42cf05891b264f71f8
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 06:00:01 2010 +0000

vg: update new merges to pipe_resource

commit b727c59bc44812ad503d9390505c92b738a5b8b0
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 05:59:38 2010 +0000

llvmpipe: update new merges to pipe_resource

commit 5f4b64b37fdcd70162c382b2ebbd494bef751dbd
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 05:59:23 2010 +0000

brw: pipe_resource fixes

commit d4aca209f531f1b65bf706ce1e5fc0375b587eb6
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 05:59:06 2010 +0000

util: update new merges to pipe_resource

commit cf6bef0afee10763c78509a3d17e9a6e49bcd3c8
Merge: 1997231 6de8e56
Author: Keith Whitwell <keithw@vmware.com>
Date: Thu Mar 18 05:38:50 2010 +0000

Merge commit 'origin/master' into gallium-resources

commit 1997231916144485c3c4a36f53eda39fce460272
Merge: ad88ac7 e1ee3ea
Author: Keith Whitwell <keithw@vmware.com>
Date: Wed Mar 17 08:46:38 2010 +0000

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/auxiliary/Makefile
src/gallium/auxiliary/util/u_blit.c
src/gallium/auxiliary/util/u_blit.h
src/gallium/auxiliary/util/u_gen_mipmap.c
src/gallium/auxiliary/util/u_gen_mipmap.h
src/mesa/state_tracker/st_cb_texture.c
src/mesa/state_tracker/st_gen_mipmap.c

commit ad88ac79034a91670940276e722bdd398d5c9023
Merge: 77bc770 8cdfd12
Author: Keith Whitwell <keithw@vmware.com>
Date: Tue Mar 16 09:13:07 2010 +0000

Merge branch 'gallium-sampler-view' into gallium-resources

Conflicts:
src/gallium/auxiliary/cso_cache/cso_context.c
src/gallium/auxiliary/util/u_blit.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_texture.c
src/mesa/state_tracker/st_cb_fbo.c
src/mesa/state_tracker/st_framebuffer.c
src/mesa/state_tracker/st_texture.c

commit 77bc770c991ea025c82eaa4e0e2390efd825d96d
Author: Keith Whitwell <keithw@vmware.com>
Date: Mon Mar 15 22:21:48 2010 +0000

util: missing file

commit f83c91db8ae63a3c3a34ff21492427a5663fb760
Merge: c1d4774 42910eb
Author: Keith Whitwell <keithw@vmware.com>
Date: Mon Mar 15 09:48:58 2010 +0000

Merge commit 'origin/gallium-sampler-view' into gallium-resources

Conflicts:
src/gallium/drivers/nv40/nv40_transfer.c
src/gallium/drivers/nvfx/nvfx_transfer.c
src/gallium/drivers/trace/tr_drm.c

commit dd7ba1378fc50710667724d30d6d4cf1125ad61e
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 23:54:36 2010 +0000

gallium: start a cleanup of buffer_usage

Remove fairly meaningless CPU/GPU READ/WRITE flags and
replace with proper usages.

commit c1d4774187189f4af8ff421b210824f3d53ceefb
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 23:05:45 2010 +0000

llvmpipe: don't FREE userbuffer data

commit 9bfa07afe179f8060e7beefb754a29c4d9c6e349
Merge: 65757a1 08cddfe
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 22:54:51 2010 +0000

Merge commit 'origin/master' into gallium-resources

Conflicts:
src/gallium/drivers/llvmpipe/lp_rast.c
src/gallium/drivers/llvmpipe/lp_scene.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/llvmpipe/lp_texture.h
src/gallium/drivers/softpipe/sp_texture.c
src/gallium/drivers/svga/svga_screen_texture.c

commit 65757a143f8e3fcd7afbc1ff92db44a823edf46c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 22:41:17 2010 +0000

svga: build fixes

commit 2f5435220501d4b3050cab2bb1dce6174cd13ff6
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 22:39:25 2010 +0000

gallivm: build fix

commit 42642ec0984107d82b740711f2debbf38457a06e
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 22:38:33 2010 +0000

llvmpipe: convert to pipe_resources

commit 7bbcb21e20cb545ef8dd5fc61d67ed931c69e813
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 22:19:30 2010 +0000

gallivm: convert to pipe_resources

commit 88ae0d04610ca52649b42e32141a52af6d5a739b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 21:01:22 2010 +0000

configs: build svga

commit 0e112bc69828e65085ebfaef895ecd78fe53f1c4
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 21:01:17 2010 +0000

gallium: restore PIPE_BUFFER_USAGE_CUSTOM

commit 102aca688b95c976b7178b84092fba7d041ff9d2
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 21:00:41 2010 +0000

util: more transfer helpers

commit a79f6a4a0836fc64c07f9aeec21d914474fe3649
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 20:59:36 2010 +0000

svga: convert to use pipe_resrource

As with others so far, a fairly shallow conversion.

commit 087fb54492fa5e3baf040c5efbf7dacd98a8849b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 18:38:08 2010 +0000

brw: fix function name

commit cfc9dd707d16e06fd23b6926da3a6e2269f31dc8
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 18:19:06 2010 +0000

gallium: enable brw compile

commit 8a5b86d76bdd3c7de63322423f59940a4dc2ee25
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 18:18:50 2010 +0000

brw: compiles with pipe_resource

commit 563ca458b548c41ca4dca559354c16ca1a80d009
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 18:18:42 2010 +0000

i915: hook up userbuffer create

commit b5095b48247b6020e36cc942ac145c3fccbe9a19
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 17:20:51 2010 +0000

i915: use helpers for is_resource_referenced

commit d5392bdc6d70002acf9c5bac0fde14ba405c4d84
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 17:20:38 2010 +0000

util: helpers for is_resource_referenced

commit 2f3492a5aefbb2e745f6700d8e910ebb5cbb98cf
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 17:08:50 2010 +0000

i915: remove buffer.c again

commit 1373a35b65fcc25ec6cdfea2703bbb3417de2c6d
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 17:08:34 2010 +0000

i915: add new files to scons

commit 0251612d70e57fe38e10e75915b394631d224f2c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 16:38:29 2010 +0000

i915: compiling with pipe_resources

commit 9a0235864252929a8eedd44dbd2fe30fe54c531d
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 13:51:16 2010 +0000

gallium: remove inline_read transfer

commit a6ba315e25793e0c228d3a4ae2f8201634dc9ff0
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 13:50:32 2010 +0000

trace: get running

Some dumping will be incorrect or disabled, but it runs without
crashing

commit 2133f1d90aa919662a8420a0cf3b4557e6ec1afd
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 13:49:42 2010 +0000

gallium: remove the inline_read transfer

There aren't enough users of this to justify it.

commit bccaf1fa30881f6b4fb189a9b74fc7af79c3b481
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 12:30:37 2010 +0000

identity: hook up inline transfer operations

commit e4c152a344f2f53c842b810724a2ae7cb4554f58
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 12:21:54 2010 +0000

gallium: build trace and identity

commit 0b5a311db78852fa9fd021e17b5968a1e0436b49
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 12:21:36 2010 +0000

gallium: add more of the transfer state to pipe_transfer

Not really sure if recording all the arguments to the
create_{transfer,texture,surface,etc} functions in the result of those
calls is a great idea, but it seems we're fairly dependent on it
throughout the code.

commit a23985c26eafe76b0a7dacc892e50cb589f211fe
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 12:19:46 2010 +0000

identity: compiles with pipe_resources

commit d0d630944304c208f6dade6ef8836763ee2bc7b4
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 12:13:02 2010 +0000

trace: compiles with pipe_resources

commit a4451ea459cc8bfc915fe6aed2891b90854b6c9d
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:39:50 2010 +0000

softpipe: give userbuffers a format other than NONE

Most mesa demos working

commit 32bb1bd4ba29884a4ecfa11c8441d33dfceabcef
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:39:21 2010 +0000

util: correct argument order in pipe_buffer_map

commit 7e2696c06445282feb781047277b260308760a33
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:32:55 2010 +0000

softpipe: transfer flush

commit a0543b13c042e3c1142522d9d136f16fd4cabf78
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:32:13 2010 +0000

util: noop implementation of transfer_flush_region

commit ce418533be752dbeb164e7ff82a99483048e482b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:26:07 2010 +0000

gallium: softpipe runs gears with pipe_resources

commit bfda4f2eb34498e4b7f3c608d30fccff6bb9651b
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 11:25:48 2010 +0000

util: get clip_tile working again

commit f5ef219c3bed62b6a0da842e675fae16268e0fbe
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 09:43:20 2010 +0000

softpipe: use u_transfer helpers

commit 072957aab25affecf0702e925310e46c694a5ee4
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 09:42:46 2010 +0000

util: helpers for inline transfers

commit 9c45561fb0d7a52400093bcb2ce5f727fafd7777
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 09:42:25 2010 +0000

util: fix typo calculating transfer box

commit f3e98fd47f36804d019a684d49ff230df3ab0cf5
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 09:25:46 2010 +0000

st/vega: convert to pipe_resource

commit d1b7b00afc944f6499c83d676c7642115d62a62c
Author: Keith Whitwell <keithw@vmware.com>
Date: Sun Mar 14 08:37:56 2010 +0000

gallium: begin converting drivers to pipe_resource

Work in progress...

commit 51c25117f5d6da1926a2be5ecc66677952a8abf0
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 13 20:16:27 2010 +0000

gallium: work in progress on layering resources on top of old textures

Helper code in an aux module to avoid rewriting all the drivers.

commit fb6764d3ce95c55aa78af2f1c8cbb17b79ce1ba2
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 13 19:19:09 2010 +0000

heaps of wip

commit ee6b3bc730fcdaf8da3646d62f04578ec06d36a1
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 13 16:38:02 2010 +0000

wip2

commit 1830880212445189fe267d615075239ed17c7cc0
Merge: 90b4045 47bfbd4
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 13 15:14:03 2010 +0000

Merge branch 'gallium-sampler-view' into gallium-resources

Conflicts:
src/gallium/include/pipe/p_context.h
src/mesa/state_tracker/st_atom_texture.c
src/mesa/state_tracker/st_cb_bitmap.c
src/mesa/state_tracker/st_cb_drawpixels.c
src/mesa/state_tracker/st_cb_texture.c
src/mesa/state_tracker/st_context.c
src/mesa/state_tracker/st_context.h
src/mesa/state_tracker/st_texture.h

commit 90b4045fbc0a093fcd04efba7e045ec259c490b8
Author: Keith Whitwell <keithw@vmware.com>
Date: Sat Mar 13 14:52:43 2010 +0000

wip
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
0dab3189e1d100a9a2487f7aff45589b423c386c 21-Mar-2010 Dave Airlie <airlied@redhat.com> gallium: cached bufmgr add map busy check

Suggested by Jose on the list, probably not perfect but will let me get
past this for now, testing with a fenced bufmgr on top of this, was slower,

Also this doesn't let you do the busy early exit optimisation either from
what I can see.

Signed-off-by: Dave Airlie <airlied@redhat.com>
b_bufmgr_cache.c
2f5beb4b530d47d6b4a7cf0effeaec0d2c1b6ea4 23-Feb-2010 Luca Barbieri <luca@luca-barbieri.com> pipebuffer: slab: if size < alignment, use alignment to find bucket

If the size is lower than the alignment, we must use the alignment to
select the bucket.

Otherwise, the selected bucket won't be able to satisfy our request
and will fail.

Signed-off-by: José Fonseca <jfonseca@vmware.com>
b_bufmgr_slab.c
c36b912e09a12b60d26fd1ebe0939b457514d800 23-Feb-2010 Luca Barbieri <luca@luca-barbieri.com> pipebuffer: fix inverted signalled checking

A return of 0 means the fence is signalled.

Signed-off-by: José Fonseca <jfonseca@vmware.com>
b_buffer_fenced.c
9f4f87893b4d3555204a1a66d108f8f9185e3d14 23-Feb-2010 Luca Barbieri <luca@luca-barbieri.com> pipebuffer: avoid assert due to increasing a zeroed refcnt

The cache manager stores buffers with a reference count that dropped to 0.
pipe_reference asserts in this case on debug builds,
so use pipe_reference_init instead.

Signed-off-by: José Fonseca <jfonseca@vmware.com>
b_bufmgr_cache.c
935929595c31ded8827f081150d1024ff2909d6b 16-Feb-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Don't synchronize when checking for buffer overflows.

To avoid masking synchronization issues in debug builds.
b_bufmgr_debug.c
4b1241bf76c7f7ed6d1088a266e9ac000b1f5a54 11-Feb-2010 Brian Paul <brianp@vmware.com> gallium: cast to silence waring
b_bufmgr_debug.c
bcace317c7ff2c774784b24b51b2de5d9cc871a0 11-Feb-2010 Brian Paul <brianp@vmware.com> gallium: use os_time.h in pb_bufmgr_cache.c

Untested, but seems straightforward.
b_bufmgr_cache.c
2aaca1df9df6980ec88180c8866c8987b31db91a 02-Feb-2010 José Fonseca <jfonseca@vmware.com> gallium: Move p_thread.h and p_atomic.h out of gallium interfaces.

Into os/os_thread.h and util/u_atomic.h respectively.
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
28486880ca3ec39419ccee0cb1a3bedc9ef7117c 02-Feb-2010 José Fonseca <jfonseca@vmware.com> gallium: pipe/p_inlines.h -> util/u_inlines.h
b_buffer.h
cb64ca5066a3f4611680aa8c9a5d1caf68538cb5 25-Jan-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Reapply the mesa_7_7_branch's changes.

After the last mesa_7_7_branch merge the old master code remained,
instead of the newer mesa_7_7_branch's code. This commit makes both
branches match, modulo interface changes.

Note: future mesa_7_7_branch -> master merges will most likely hit
conflicts in these files. Unless otherwise stated, the mesa_7_7_branch
is the reference.
b_buffer_fenced.c
b_buffer_fenced.h
1e4b81267c77567ec9dfb687ccd8f02086053777 22-Jan-2010 Brian Paul <brianp@vmware.com> gallium/aux: re-add pb_buffer_fenced.[ch] accidentally remove during merge
b_buffer_fenced.c
b_buffer_fenced.h
cd8614b0287dc5a69725ec4ee0208fad61f7789e 22-Jan-2010 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/draw/draw_context.c
src/gallium/auxiliary/draw/draw_pt_fetch_shade_pipeline.c
src/gallium/auxiliary/pipebuffer/Makefile
src/gallium/auxiliary/pipebuffer/SConscript
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/tgsi/tgsi_scan.c
src/gallium/drivers/i915/i915_surface.c
src/gallium/drivers/i915/i915_texture.c
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/llvmpipe/lp_tex_sample_c.c
src/gallium/drivers/llvmpipe/lp_texture.c
src/gallium/drivers/softpipe/sp_prim_vbuf.c
src/gallium/state_trackers/xorg/xorg_dri2.c
src/gallium/winsys/drm/intel/gem/intel_drm_api.c
src/gallium/winsys/drm/nouveau/drm/nouveau_drm_api.c
src/gallium/winsys/drm/radeon/core/radeon_drm.c
src/gallium/winsys/drm/vmware/core/vmw_screen_dri.c
src/mesa/state_tracker/st_cb_clear.c
cea9250ff0fc8bfa0408b635ae2ef36bc0616e2e 22-Jan-2010 Vinson Lee <vlee@vmware.com> pipebuffer: Remove unnecessary header.
b_validate.c
c4ceba114161c029ecd2812eb075654b4411b59c 21-Jan-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Release the lock during map wait. Cleanups.
b_buffer_fenced.c
3498616b03f4b1da7a2a74ed83e95aee77204a2f 20-Jan-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Swap buffers out to system memory when running out of memory.
akefile
Conscript
b_buffer_fenced.c
b_buffer_fenced.h
b_bufmgr.h
b_bufmgr_fenced.c
bcadde2068563b818a280e40e6189191e10fd371 14-Jan-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Ensure buffer size/alignment is not zero.
b_bufmgr_debug.c
b01ffb12ed82dcf435b186e2aff35e344a8a6ebe 14-Jan-2010 Jakob Bornecrantz <jakob@vmware.com> Merge branch 'mesa_7_7_branch'

Conflicts:
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/auxiliary/util/Makefile
src/gallium/drivers/r300/r300_state_derived.c
61f7252448af24942ba9fffe6d792abc1f7d9f84 06-Jan-2010 Jakob Bornecrantz <jakob@vmware.com> Revert "pipebuffer: Multi-threading fixes for fencing."

This reverts commit 5b64d94390e4805e1634f0c8b5e3156e12b8b872.
b_buffer_fenced.c
e32487b8a13a9efabb0359a9dde33e074e905e82 06-Jan-2010 José Fonseca <jfonseca@vmware.com> Merge remote branch 'origin/mesa_7_7_branch'

Conflicts:
configs/default
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/mesa/main/version.h
5b64d94390e4805e1634f0c8b5e3156e12b8b872 05-Jan-2010 José Fonseca <jfonseca@vmware.com> pipebuffer: Multi-threading fixes for fencing.

I had this patch on my hard drive for long time. It doesn't fully
address SVGA multi-threading issues, but causes no regressions, so decided
to commit while it still applies cleanly.

Attention: merging this into master will cause issues due to recent
changes in reference counting to fix strict aliasing rules violation.
b_buffer_fenced.c
c847a13d38d4e8c5f4c386d060dcc8ec09e491a3 01-Jan-2010 José Fonseca <jfonseca@vmware.com> gallium: Generate a single library for auxiliaries with Make too.
akefile
f8f4757d46627fb453f08dc63fde3d7f458eafe2 31-Dec-2009 José Fonseca <jfonseca@vmware.com> scons: Aggregate all tiny libraries in a single library.

Makes integration of gallium into out of tree components much easier. No
pratical change for components in this tree,
Conscript
13c647fa0d3e361efbb10a6d313bdc6bf7c890e8 03-Dec-2009 José Fonseca <jfonseca@vmware.com> gallium: fix ref counting bug in pb_bufmgr

This was discovered by the pipe_reference api change.
b_bufmgr_cache.c
35a15f02634a31c1517363d91aaef8f190e24687 03-Dec-2009 Roland Scheidegger <sroland@vmware.com> gallium: fix reference counting functions to be strict-aliasing compliant

Historically, parts of mesa code are not strict-aliasing safe, hence
-fno-strict-aliasing is needed to compile (this got forgotten for scons
builds for gallium, which indeed not only caused compiler warnings but also
unexplicable crashes in non-debug builds). However, we should try to eliminate
code not complying with strict-aliasing code at least for gallium.
Hence change pipe_reference functions to make them strict-aliasing compliant.
This adds a bit more complexity (especially for derived classes) but is the
right thing to do, and it does in fact fix a segfault.
b_buffer.h
b_buffer_fenced.c
b_bufmgr_cache.c
90e69c81e445136b7d14c569cab5b517b8073498 19-Nov-2009 José Fonseca <jfonseca@vmware.com> pb: Make fenced buffers threadsafe.
b_buffer_fenced.c
a40055f4b608a8f3c07218172ed169214db19236 02-Nov-2009 Brian Paul <brianp@vmware.com> gallium/util: add casts to silence warnings
b_buffer_fenced.c
3a49497f102f2b64a8755d3cf65b7c0386e95aac 25-Oct-2009 José Fonseca <jfonseca@vmware.com> gallium: Move enum pipe_error into p_defines.h.

It's really just another define. No need for its own header.
b_buffer.h
b_buffer_fenced.c
b_bufmgr.h
b_bufmgr_slab.c
b_validate.c
b_validate.h
55770d09c18c4d33403abb97dfef4f897efbbe2a 05-Oct-2009 Brian Paul <brianp@vmware.com> Merge branch 'mesa_7_6_branch'

Conflicts:

src/gallium/auxiliary/util/u_cpu_detect.c
389021220d27c376b81a6221a31d0ee33c24e67f 02-Oct-2009 Brian Paul <brianp@vmware.com> gallium: replace // comments with /* */
b_buffer_fenced.c
fca7f384418fa6e353d41b2e05117e0553526053 24-Sep-2009 Keith Whitwell <keithw@vmware.com> pipebuffer: fix printf warnings
b_bufmgr_debug.c
0c55dd8094cad716c4b30316b5c8f0d9a0b72905 24-Sep-2009 Keith Whitwell <keithw@vmware.com> pipebuffer: fix warnings
b_buffer_fenced.c
5920b6b67988fc3977f43b39d8546cc20247bf31 21-Jun-2009 Zack Rusin <zack@kde.org> pipebuffer: handle possible null pointer dereference

reported by clang static analyzer
b_buffer_malloc.c
b_bufmgr_ondemand.c
2af0173e9e4eefe910c6011038e7346091a9b2a4 18-Jun-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Use a type consistently for sizes/offsets.

Avoids warnings on 64bit builds.

Use regular unsigned since that's what gallium expects, but use a
typedef to facilitate possible changes in the future.
b_buffer.h
b_buffer_fenced.c
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_alt.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
77c329a2773820c57e7b286858e80a596f89ef94 08-Jun-2009 Jakob Bornecrantz <jakob@vmware.com> pipebuffer: Silence out of heap space debug print
b_bufmgr_mm.c
1248ff7d45ce4b78af8c7a091cb64f1f992f88dd 28-Apr-2009 José Fonseca <jfonseca@vmware.com> pb: Save the stack backtrace when creating/mapping a debug buffer.
b_bufmgr_debug.c
606a5476131059b012bb2522b204ed8b868db122 28-Apr-2009 José Fonseca <jfonseca@vmware.com> pb: Dump the fenced buffer sizes.
b_buffer_fenced.c
29d9abf72d73c4ccd3ad605f68ab1adf5e13c67a 24-Apr-2009 Keith Whitwell <keithw@vmware.com> pipebuffer: don't fail when validating mapped buffers

This can be almost impossible to avoid - hopefully we won't encounter
a situation where this is a true requirement. Would probably require
drivers to flush between hardware and software vertex processing.
b_buffer_fenced.c
ad11107206ff4954366d77f334431b637ee256fa 24-Mar-2009 Alan Coopersmith <alan.coopersmith@sun.com> Add #ifdefs needed to compile Gallium on Solaris with gcc or Sun cc

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
b_buffer_fenced.c
e9d156e9e4f92ae1ce70bd563c251b34d238c4bc 23-Mar-2009 Michel Dänzer <daenzer@vmware.com> gallium: Remove remnants of reference counting internals outside of p_refcnt.h.
b_buffer.h
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
cf25ef9072f5290d228a381727c4ff921b0c60d6 13-Mar-2009 Thomas Hellstrom <thellstrom-at-vmware-dot-com> gallium: Use struct pipe_atomic for pipe refcounts.

Signed-off-by: Thomas Hellstrom <thellstrom-at-vmware-dot-com>
b_buffer.h
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
45bde75bd67e7e920f0113842d1fa58613ccc3ec 04-Mar-2009 Michel Dänzer <daenzer@vmware.com> gallium: Remove some superfluous instances of #include "p_inlines.h".
b_buffer.h
5e27cd46c04a9e7b5904cc014bffd0f4daae31fe 04-Mar-2009 Michel Dänzer <daenzer@vmware.com> gallium: Unify reference counting.

The core reference counting code is centralized in p_refcnt.h.

This has some consequences related to struct pipe_buffer:

* The screen member of struct pipe_buffer must be initialized, or
pipe_buffer_reference() will crash trying to destroy a buffer with reference
count 0. u_simple_screen takes care of this, but I may have missed some of
the drivers not using it.
* Except for rare exceptions deep in winsys code, buffers must always be
allocated via pipe_buffer_create() or via screen->*buffer_create() rather
than via winsys->*buffer_create().
b_buffer.h
b_buffer_fenced.c
b_buffer_malloc.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
dceb09909ea9d6eaef0334897ebed6da45db6faa 03-Mar-2009 José Fonseca <jfonseca@vmware.com> Merge commit 'origin/gallium-0.1'

Conflicts:
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
efcea15aaaaa4f1431a8c0a8521bd42a953f2e6c 03-Mar-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Cleanup merge.
b_buffer_fenced.c
9a9dc422b0c491f516fd8d80e0ce128e4145698f 03-Mar-2009 Keith Whitwell <keithw@vmware.com> pb: fix up merge mistakes
b_buffer_fenced.c
9036e0d724dcefb7e15d9cc2020a25f87c93a04d 03-Mar-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Fix copy'n'paste typo.
b_buffer_fenced.c
916de35d677ca5238e9515840fa5aa9f81302c5b 03-Mar-2009 Keith Whitwell <keithw@vmware.com> Merge commit 'origin/gallium-0.1'

Conflicts:

scons/gallium.py
src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
src/gallium/include/pipe/p_defines.h
src/mesa/vbo/vbo_exec_api.c
src/mesa/vbo/vbo_exec_draw.c
050ce17799cbe652962f898942ae6551d31f21a2 02-Mar-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Cleanup code & comments.
b_buffer_fenced.c
fe64aa0c8eb71e708a3530f8fec2c7df94d90e36 02-Mar-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Handle PIPE_BUFFER_USAGE_DONTBLOCK flag.

Conflicts:

src/gallium/auxiliary/pipebuffer/pb_buffer_fenced.c
b_buffer_fenced.c
2c1d40a051187242d7e55c7755e0433d4fb9c93a 02-Mar-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Wait for the GPU to finish reading too.

No real change, as we're not tracking relocations read/write access yet.
b_buffer_fenced.c
802a5ff507e44eafe86b687f603d496c3846fd50 24-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Remove unused var.
b_buffer_fenced.c
dbab39c6caacb974062ac574b365254412aea412 25-Feb-2009 Benjamin Close <Benjamin.Close@clearchain.com> gallium: Add support for BSD operating systems, tested with FreeBSD

BSD supports pipe in the same way as linux hence options which
are safe for linux are also safe for BSD. Define PIPE_OS_BSD in
include/pipe/p_config.h and adjust the defines to make use of it.

Also define MAP_ANONYMOUS for BSD systems which use MAP_ANON

Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
b_buffer_fenced.c
0be216c526c29726a73a26a37dcd5a00cfbefc86 24-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Allow asymmetric guard sizes for under/overflow detection.
b_bufmgr.h
b_bufmgr_debug.c
208dbc6832c58f030930cdfccb5f0a2b378a5eb1 24-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Remove unused var.
b_buffer_fenced.c
37f21fce3bd323c361291215edeb7d8cf5f4335b 23-Feb-2009 José Fonseca <jfonseca@vmware.com> Merge commit 'origin/gallium-0.1'

Conflicts:
src/gallium/auxiliary/pipebuffer/pb_bufmgr_mm.c
src/gallium/auxiliary/util/u_tile.c
d9602e5144bc76b9791fa3382ca38c880df96198 20-Feb-2009 Jakob Bornecrantz <jakob@vmware.com> gallium: Improve makefiles for libraries

The template makefile that most libraries in
gallium included was based on dri and had a bunch
unrelevant junk in it.

Update it and improve the depending makefiles.
akefile
7c12e1aa53ba457d29edf4c07d834c70d51f0bbd 18-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Dump debugging info for fenced buffer list.
b_buffer_fenced.c
b_buffer_fenced.h
b_bufmgr_fenced.c
c7431552c0ff203cd4b3ae37751b10e6111e4167 18-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Don't retry to alloc memory block on mm.

It will give the same result 2nd time too, as fencing is done at a
higher level.
b_bufmgr_mm.c
ea4bf267e4b023b08043f91ac44592fed1736e7f 18-Feb-2009 José Fonseca <jfonseca@vmware.com> util: Move p_debug.h into util module.

The debug functions depend on several util function for os abstractions, and
these depend on debug functions, so a seperate module is not possible.
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr_alt.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_ondemand.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
00ee308ab3e7da2a2939845e0f0a24b8a0925025 10-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Drop reliance on pipe_winsys.
b_buffer_fenced.c
b_buffer_fenced.h
b_bufmgr.h
b_bufmgr_fenced.c
4ad190c96f2ad4364537e700dcb381c9dceec35c 01-Feb-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Drop (most of) pipe winsys stuff.
akefile
Conscript
b_bufmgr_cache.c
b_bufmgr_debug.c
b_winsys.c
b_winsys.h
adfbba476db1fc55006efb748656ebb1a481d143 30-Jan-2009 Zack Rusin <zackr@vmware.com> gallium: make p_winsys internal

move it to pipe/internal/p_winsys_screen.h and start converting
the state trackers to the screen usage
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_winsys.c
46edad7d29b6f65de46b9c9da6f66eb0b12e3f8c 30-Jan-2009 José Fonseca <jfonseca@vmware.com> Merge branch 'gallium-0.2' into gallium-winsys-private
7996b3e034f92eeceed3f3e7c01eb1f829d98b18 30-Jan-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Consider 0 as no alignment needed.
b_buffer.h
b3028acd98e2b7fd09344f9005c5b20bba91262c 30-Jan-2009 Zack Rusin <zackr@vmware.com> gallium: give the screen priority when it comes to buffer allocations

allows the driver to overwrite buffer allocation, first step on the way
to making winsys interface internal to the drivers. state trackers and
the code above it will go through the screen
b_winsys.c
444e98de31c5456008a4b3568373db02ddc5385f 24-Nov-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Ondemand buffer manager.

A variation of malloc buffers which get transferred to real graphics memory
when there is an attempt to validate them.
akefile
Conscript
b_bufmgr.h
b_bufmgr_ondemand.c
e06474dbae6979177629fb6187331291ff230c65 24-Nov-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Implement proper buffer validation.
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
b_validate.h
b_winsys.c
1be4d4d4c6af61bda9e682e3fd347228d2589f8a 28-Jan-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: More assertions.
b_buffer.h
815de0a5dfadbe9a2618b94c4f28a799cc501a14 28-Jan-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Fix alignment assertion.
b_bufmgr_mm.c
665d6d6c1e5ebbb925e73bd3637d228def5a977d 28-Jan-2009 José Fonseca <jfonseca@vmware.com> pipebuffer: Export the pipe buffer winsys hooks.
b_buffer.h
b_winsys.c
b_winsys.h
8abc860bd46a6cd584f9a64cb4613be76f82db06 15-Dec-2008 Alan Hourihane <alanh@tungstengraphics.com> Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

src/gallium/winsys/gdi/SConscript
aef455c4a7bbd7df97a6444ae332cb5fb976e627 12-Dec-2008 Keith Whitwell <keith@tungstengraphics.com> Revert "pipebuffer: Implement proper buffer validation."

This reverts commit a6d866f72c88d48d2bcfb3e3c882fdb639b5a8ce.
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
b_validate.h
b_winsys.c
9b3bce6bed36a37293cd67ed4e9a05dd6e1c9d80 12-Dec-2008 Keith Whitwell <keith@tungstengraphics.com> Revert "pipebuffer: Ondemand buffer manager."

This reverts commit 17849eafaacfbb2124d86f561a91b707317d3b31.
akefile
Conscript
b_bufmgr.h
b_bufmgr_ondemand.c
71051f1f40206dd9d86d64cfdc20cc744a15f12c 12-Dec-2008 Keith Whitwell <keith@tungstengraphics.com> Revert "pipebuffer: Fix buffer overflow."

This reverts commit 55839ae064d64b7fcc180fcddb364bf31ab760dc.
b_validate.c
4af0d940a35536f096a9289470af0268a79402b3 25-Nov-2008 Alan Hourihane <alanh@tungstengraphics.com> Merge commit 'origin/gallium-0.1' into gallium-0.2

Conflicts:

scons/gallium.py
src/gallium/auxiliary/pipebuffer/pb_buffer.h
55839ae064d64b7fcc180fcddb364bf31ab760dc 25-Nov-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Fix buffer overflow.
b_validate.c
17849eafaacfbb2124d86f561a91b707317d3b31 24-Nov-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Ondemand buffer manager.

A variation of malloc buffers which get transferred to real graphics memory
when there is an attempt to validate them.
akefile
Conscript
b_bufmgr.h
b_bufmgr_ondemand.c
a6d866f72c88d48d2bcfb3e3c882fdb639b5a8ce 24-Nov-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Implement proper buffer validation.
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
b_validate.h
b_winsys.c
cbce12b5404846520bb776f73885f0ea99a13124 06-Nov-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: s/mmDestroy/u_mmDestroy/
b_bufmgr_mm.c
28a2edb7389107cd46eb382a44d339dd7972310a 28-Oct-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Ensure refcounts of live buffer objects are never zero.
b_buffer.h
b_bufmgr_fenced.c
3ad56968f09397a8dd417eae025b9506efaf8414 29-Oct-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: prefix memory manager functions with u_ to differentiate from functions in mesa/main/mm.c
b_bufmgr_mm.c
1672e8e05996d48e51a1998bd7e9b08b78e012f5 18-Sep-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: New callback to flush all temporary-held buffers.

Used mostly to aid debugging memory issues or to clean up resources when
the drivers are long lived.
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_alt.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
038d53cbdb9e504388141c25859bce12f7e8f87e 01-Sep-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Add missing break statement to cache lookup logic.

Second loop was never run. Spotted by Keith.
b_bufmgr_cache.c
5c198f660a1812d9b3970408695d04bdd74a5d1e 01-Sep-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Comment the slab code. Remove the freeSlabs list.

The freeSlabs list is not really needed as we free empty slabs immediately.
Time based cached is done separately.
b_bufmgr_slab.c
c46c07f6c60edb60514756bd6af7918f70931e53 28-Aug-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Fix/add detail to the under- overflow report messages.
b_bufmgr_debug.c
c6739e8cea287e17b248120e1a76480f1a25c082 28-Aug-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Check buffer over- & underflows when mapping/unmapping too.
b_bufmgr_debug.c
0bb852fa49e7f9a31036089ea4f5dfbd312a4a3a 27-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: thread wrapper clean-up

In p_thread.h replace _glthread_* functions with new pipe_* functions.
Remove other old cruft.
b_buffer_fenced.c
b_bufmgr_cache.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
fd06d01b80fd9b2924682686e943d819bfcf027b 25-Aug-2008 Brian <brian.paul@tungstengraphics.com> gallium: include <sched.h> on linux to get sched_yield() proto
b_buffer_fenced.c
6fd2feaad7029a2f6d02bcf7039cbe72f53c615c 25-Aug-2008 Brian <brian.paul@tungstengraphics.com> gallium: include u_memory.h, u_math.h
b_bufmgr_debug.c
4f25420bdd834e81a3e22733304efc5261c2998a 25-Aug-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: refactor/replace p_util.h with util/u_memory.h and util/u_math.h

Also, rename p_tile.[ch] to u_tile.[ch]
b_buffer_fenced.c
b_buffer_malloc.c
b_bufmgr_alt.c
b_bufmgr_cache.c
b_bufmgr_debug.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
b_validate.c
b_winsys.c
1ee500ac73fa657f02321c46cf5d9a4bfdea54de 06-Aug-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Add an extra assertion to ensure buffers do not jump between lists.
b_buffer_fenced.c
2170ec9048eab751828700728c1cc8264c860229 20-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: More detailed description of bufer over-/undereflows.
b_bufmgr_debug.c
17af66fc1a141920969ddf404bd7ffb52a94fb31 13-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> pb: buffer over/underflows are errors.
b_bufmgr_debug.c
93ff702b4f1c6016e249c4d326e71cdc4932f57c 09-Jul-2008 Brian Paul <brian.paul@tungstengraphics.com> gallium: fix logic in pb_check_usage()
b_buffer.h
ade03755bcaec2dedb5cd4d13160ba366ee804cd 03-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Silent warnings.

Although rarely hit in normal apps, they are too noisy with test suites.
b_buffer_fenced.c
d16fcd07f876fe7fb29f5f4e3df4e83ff7de3422 01-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Debug buffer manager to detect buffer under- and overflows.

It should detect both cpu and gpu buffer overflows.
akefile
Conscript
b_bufmgr.h
b_bufmgr_debug.c
ea4ca10b1bec67c8a60db0e4e5581318ce9f62f9 01-Jul-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Verify usage flag consistency. Minor cleanups.
b_buffer.h
b_buffer_fenced.c
b_bufmgr_alt.c
b_bufmgr_cache.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_bufmgr_slab.c
23d340c9edbbe64a99478b922c008ae3e2ec7103 12-Jun-2008 Keith Whitwell <keith@tungstengraphics.com> pb: don't assert(0) on failure to allocate - this is a normal condition in many drivers
b_bufmgr_mm.c
0f552f500c05d041eda751867c779a8ecc11849c 11-Jun-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Fix improper memory free.
b_buffer_malloc.c
0c5b1a8ffb21f72fcde64a7daa13d5dab5b90425 10-Jun-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Alternative buffer manager.

For situations where one has a reserve memory pool, or
a faster/slower pool.
akefile
Conscript
b_bufmgr.h
b_bufmgr_alt.c
4b52f4df1b37918a363d05e0b3db22125e801367 09-Jun-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Be more lenient when matching cached buffer sizes.

Reuse cached buffers up to twice as big a requested.
b_bufmgr_cache.c
35cfd0a4900750f67cba4f64929ff3347f0bd46f 26-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Malloc buffer provider.

Simple wrapper around pb_malloc_buffer_create for convenience.
b_buffer_malloc.c
b_bufmgr.h
a0e2955a16a8a04afe7f84b1c8551211542a6fbd 26-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Allow slab allocations of buffers of inequal size.
b_bufmgr_slab.c
781676c7cc5ae7586ee8edd07de880892c5a2d86 22-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: More robust face null pointers.

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.
b_buffer.h
bd4eec0561fb021849ac4047fdbf40a616fb68b3 22-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Don't retry allocating in slab suballocator.

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.
b_bufmgr_slab.c
2268306f58769dff4b2b1da8bb668bdff2856d70 09-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Don't serialize GPU writes.

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.
b_buffer_fenced.c
8eab7de888bb4056c34f80edfbc90a543736ea3b 08-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Temporarily reimplement validation as growable array.

Jose
b_validate.c
7ffbfaccfb1484a4ffd5aea0e0e1fbb407977a56 08-May-2008 Michel Dänzer <michel@tungstengraphics.com> gallium: Make sure functions have proper prototypes and remove unused variable.
b_validate.c
b_validate.h
82dd0225e7e21a35ca66d439dce8cfa39d782470 08-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Preliminary buffer validation.

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.
akefile
Conscript
b_validate.c
b_validate.h
53996e562f8623ccb1defeaaa77efdff24477808 08-May-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Don't include standard headers directly.
b_bufmgr.h
a41b78d107264227f3338446e04dcfda32634f52 25-Apr-2008 Keith Whitwell <keith@tungstengraphics.com> pb: remove unused variable, squash warning
b_buffer_fenced.c
083008d808c02226a3dfead6000a84efd5e6a9fa 27-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Be extra cautious with the incoming buffers.

A common mistake is trying to fence user or malloc buffers. So don't let
the crash happen inside pipebuffer lib.
b_buffer_fenced.c
b06cd4debfc4fb4162b4b45e61ea91948de0a279 25-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Windows user mode portability fixes.
b_buffer_fenced.c
a75a3df851339c782e045e01c2b21ffadb1e09f5 23-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: New function to flush the buffer cache.
b_bufmgr.h
b_bufmgr_cache.c
b4b3a73bdf68adc1d9fbadac913aa6cf60d648d5 22-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> pipebuffer: Temporarily allow simultaneous CPU writes.

Also, fast path for re-fencing the same buffer multiple times with the same fence.
b_buffer_fenced.c
7619240cc0c24d3ad4d2424e65110c0326a12dad 15-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Fix seg fault (James Vogt).
b_bufmgr_fenced.c
95aeeb6d746e57473116ef4d72c05330902f68a5 15-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Several fixes to buffer caching.
b_buffer.h
b_bufmgr_cache.c
b_bufmgr_slab.c
a175e15f20b2a231cc9d09099e7b6d8aea6c624e 14-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Allow to use a single slab.

We often want to use a pool of equally sized buffers, so this makes the
slab suballocator a drop-in replacement.
b_bufmgr.h
b_bufmgr_slab.c
21ae3d2721326d56c76370fd8bfcc1536203925d 14-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Serialize buffers writes.

Allow concurrent reads from buffers by the CPU/GPU, but serialize
all writes.
b_buffer_fenced.c
fb2b5f7a4ac411a5bb5cde12ba15265b30c032e8 13-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Buffer cache.
akefile
Conscript
b_bufmgr.h
b_bufmgr_cache.c
21c302b0ec39480a7eaab7827cce5b609d196606 13-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Initial port of Thomas slab suballocator to pipebuffer.

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.
akefile
Conscript
b_bufmgr.h
b_bufmgr_slab.c
4382b0c9cba3efa8a60252f6ddf2f0653352f7d8 08-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Fix overzealous assert.
b_buffer_fenced.c
fdff063343ddfbfb1b2fa921e2efcc2fae35d0ad 05-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Keep fenced buffers list ordered.

This allows to keep the list small without the overhead of full walks.
b_buffer_fenced.c
f1efef809caddff442ed45a59645b3f39498f521 05-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Fix typo.
b_buffer_fenced.c
686a6c746851b4bc2572aaa1153d570717bdd77f 01-Apr-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Do not assume that buffers are freed in the same order they are fenced.

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.
b_buffer_fenced.c
d6229d7f1fda03d3c73998505b0facf6e3d5b882 27-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: Make headers C++ friendly.
b_buffer.h
b_buffer_fenced.h
b_bufmgr.h
e9bb63c8e20361597463b2f7f88d84fe2770c8b9 23-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> gallium: MSVC fixes.
b_buffer_fenced.c
e8de5c70e3370e9112a5facc870075eea60c4c46 23-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Bring in several forgotten MSVC fixes.
b_buffer.h
b_bufmgr_mm.c
b9da3791c934e05b82063a8c79c423a0a8e29a94 19-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Remove src/mesa and src/mesa/main from gallium source include paths.
inked_list.h
b_buffer_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
90b2beb661f630966788a6e909dc759c99e38973 19-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Simplify makefile boilerplate code.

Don't define ASM_SOURCES variable globally -- reserve that variable to be defined
locally by makefiles, together with C_SOURCES and CPP_SOURCES.
akefile
17158c2f00f5bee29ec8239367fd5498f22e4a91 18-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Move mm.c code into util module.

Using the u_ prefix to distingish the c source files that support gallium
interfaces and those that have really no relation with gallium itself.
b_bufmgr_mm.c
687a8b96ef13658bbe779d0011ce1144844f1972 18-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Standardize on using the pipe/ include prefix.
b_buffer_fenced.c
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
33ceb6716a2166db75659fa66d85fb4cfb9633c7 18-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Update scons build for new code layout.
Conscript
92fcbf6e7bc622dcace226bb70ff6d5cdbdbaecb 15-Feb-2008 José Fonseca <jrfonseca@tungstengraphics.com> Code reorganization: s/aux/auxiliary/.

"aux" is a reserved name on Windows (X_X)
akefile
inked_list.h
b_buffer.h
b_buffer_fenced.c
b_buffer_fenced.h
b_buffer_malloc.c
b_bufmgr.h
b_bufmgr_fenced.c
b_bufmgr_mm.c
b_bufmgr_pool.c
b_winsys.c