drm/radeon: fixup refcounts in radeon dumb create ioctl.

This was using old gem refcounting methods, fix it to be the same
as the normal create ioctl.

Signed-off-by: Dave Airlie <airlied@redhat.com>

+5 -3
+5 -3
drivers/gpu/drm/radeon/radeon_gem.c
··· 358 358 { 359 359 struct radeon_device *rdev = dev->dev_private; 360 360 struct drm_gem_object *gobj; 361 + uint32_t handle; 361 362 int r; 362 363 363 364 args->pitch = radeon_align_pitch(rdev, args->width, args->bpp, 0) * ((args->bpp + 1) / 8); ··· 372 371 if (r) 373 372 return -ENOMEM; 374 373 375 - r = drm_gem_handle_create(file_priv, gobj, &args->handle); 374 + r = drm_gem_handle_create(file_priv, gobj, &handle); 375 + /* drop reference from allocate - handle holds it now */ 376 + drm_gem_object_unreference_unlocked(gobj); 376 377 if (r) { 377 - drm_gem_object_unreference_unlocked(gobj); 378 378 return r; 379 379 } 380 - drm_gem_object_handle_unreference_unlocked(gobj); 380 + args->handle = handle; 381 381 return 0; 382 382 } 383 383