Browse Source

drm/vmwgfx: Fix legacy surface reference size copyback

Surfaces created using the guest-backed surface interface only keeps the
base mip size, so only copy that if the legacy surface reference
ioctl requests the size information.

Signed-off-by: Thomas Hellstrom <thellstrom@vmware.com>
Reviewed-by: Jakob Bornecrantz <jakob@vmware.com>
Thomas Hellstrom 11 years ago
parent
commit
c1a21373d2
1 changed files with 2 additions and 2 deletions
  1. 2 2
      drivers/gpu/drm/vmwgfx/vmwgfx_surface.c

+ 2 - 2
drivers/gpu/drm/vmwgfx/vmwgfx_surface.c

@@ -908,8 +908,8 @@ int vmw_surface_reference_ioctl(struct drm_device *dev, void *data,
 	    rep->size_addr;
 	    rep->size_addr;
 
 
 	if (user_sizes)
 	if (user_sizes)
-		ret = copy_to_user(user_sizes, srf->sizes,
-				   srf->num_sizes * sizeof(*srf->sizes));
+		ret = copy_to_user(user_sizes, &srf->base_size,
+				   sizeof(srf->base_size));
 	if (unlikely(ret != 0)) {
 	if (unlikely(ret != 0)) {
 		DRM_ERROR("copy_to_user failed %p %u\n",
 		DRM_ERROR("copy_to_user failed %p %u\n",
 			  user_sizes, srf->num_sizes);
 			  user_sizes, srf->num_sizes);