From: Thomas Hellstrom Date: Fri, 31 Oct 2014 08:54:22 +0000 (+0100) Subject: drm/vmwgfx: Fix hash key computation X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=0468ab5b791b0d55a7158b70f555157c8d79d0fb;p=openwrt%2Fstaging%2Fblogic.git drm/vmwgfx: Fix hash key computation 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 Reviewed-by: Brian Paul --- diff --git a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c index bfeb4b1f2acf..21e9b7f8dad0 100644 --- a/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c +++ b/drivers/gpu/drm/vmwgfx/vmwgfx_cmdbuf_res.c @@ -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;