drm/vmwgfx: Fix hash key computation
authorThomas Hellstrom <thellstrom@vmware.com>
Fri, 31 Oct 2014 08:54:22 +0000 (09:54 +0100)
committerThomas Hellstrom <thellstrom@vmware.com>
Fri, 31 Oct 2014 08:54:22 +0000 (09:54 +0100)
The hash key computation in vmw_cmdbuf_res_remove incorrectly didn't take
the resource type into account, contrary to all the other related functions.
This becomes important when the cmdbuf resource manager handles more than
one resource type.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c

index bfeb4b1..21e9b7f 100644 (file)
@@ -246,7 +246,8 @@ int vmw_cmdbuf_res_remove(struct vmw_cmdbuf_res_manager *man,
        struct drm_hash_item *hash;
        int ret;
 
-       ret = drm_ht_find_item(&man->resources, user_key, &hash);
+       ret = drm_ht_find_item(&man->resources, user_key | (res_type << 24),
+                              &hash);
        if (likely(ret != 0))
                return -EINVAL;