diff options
author | Keith Whitwell <keith@tungstengraphics.com> | 2005-09-08 21:40:10 +0000 |
---|---|---|
committer | Keith Whitwell <keith@tungstengraphics.com> | 2005-09-08 21:40:10 +0000 |
commit | 45ba4e43322076be27e994a1d78b8b4802c5ae72 (patch) | |
tree | 7b3eeabb0a7cc3712317fec2024872416347cbc7 /src | |
parent | d9b9b4b3beafa824914ca460754bf0a9d7ee80b6 (diff) |
use an explicit reserved field, rather than magic number in bound
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/drivers/dri/common/texmem.c | 4 | ||||
-rw-r--r-- | src/mesa/drivers/dri/common/texmem.h | 3 |
2 files changed, 5 insertions, 2 deletions
diff --git a/src/mesa/drivers/dri/common/texmem.c b/src/mesa/drivers/dri/common/texmem.c index 5bc27e4493..3dd807c326 100644 --- a/src/mesa/drivers/dri/common/texmem.c +++ b/src/mesa/drivers/dri/common/texmem.c @@ -414,7 +414,7 @@ static void driTexturesGone( driTexHeap * heap, int offset, int size, } t->heap = heap; if (in_use) - t->bound = 0; /* bound to no tex units */ + t->reserved = 1; insert_at_head( & heap->texture_objects, t ); } } @@ -572,7 +572,7 @@ driAllocateTexture( driTexHeap * const * heap_array, unsigned nr_heaps, /* The the LRU element. If the texture is bound to one of * the texture units, then we cannot kick it out. */ - if ( cursor->bound /* || cursor->reserved */ ) { + if ( cursor->bound || cursor->reserved ) { continue; } diff --git a/src/mesa/drivers/dri/common/texmem.h b/src/mesa/drivers/dri/common/texmem.h index 486cb0dab9..5c1fc32384 100644 --- a/src/mesa/drivers/dri/common/texmem.h +++ b/src/mesa/drivers/dri/common/texmem.h @@ -67,6 +67,9 @@ struct dri_texture_object { * A placeholder should have a heap and a memBlock. */ PMemBlock memBlock; /**< Memory block containing texture */ + + unsigned reserved; /**< Cannot be swapped out by user contexts. */ + unsigned bound; /**< Bitmask indicating which tex units * this texture object is bound to. * Bit 0 = unit 0, Bit 1 = unit 1, etc |