svga: hash the whole key, not just the first four bytes
authorKeith Whitwell <keithw@vmware.com>
Thu, 26 Nov 2009 15:25:09 +0000 (15:25 +0000)
committerKeith Whitwell <keithw@vmware.com>
Thu, 26 Nov 2009 15:25:42 +0000 (15:25 +0000)
src/gallium/drivers/svga/svga_screen_cache.c

index 65f5c07a72d741d5b6bed3a9fdc79fc385f67409..689981cc6d2e0ccc156db229925a1fdbc20cfa53 100644 (file)
@@ -41,7 +41,7 @@
 static INLINE unsigned
 svga_screen_cache_bucket(const struct svga_host_surface_cache_key *key)
 {
-   return util_hash_crc32( key, sizeof key ) % SVGA_HOST_SURFACE_CACHE_BUCKETS;
+   return util_hash_crc32( key, sizeof *key ) % SVGA_HOST_SURFACE_CACHE_BUCKETS;
 }
 
 
@@ -95,8 +95,8 @@ svga_screen_cache_lookup(struct svga_screen *svgascreen,
    pipe_mutex_unlock(cache->mutex);
    
    if (SVGA_DEBUG & DEBUG_DMA)
-      debug_printf("%s: cache %s after %u tries\n", __FUNCTION__, 
-                   handle ? "hit" : "miss", tries);
+      debug_printf("%s: cache %s after %u tries (bucket %d)\n", __FUNCTION__, 
+                   handle ? "hit" : "miss", tries, bucket);
    
    return handle;
 }