From 45ba4e43322076be27e994a1d78b8b4802c5ae72 Mon Sep 17 00:00:00 2001 From: Keith Whitwell Date: Thu, 8 Sep 2005 21:40:10 +0000 Subject: [PATCH] use an explicit reserved field, rather than magic number in bound --- src/mesa/drivers/dri/common/texmem.c | 4 ++-- 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 5bc27e4..3dd807c 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 486cb0d..5c1fc32 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 -- 2.7.4