diff options
Diffstat (limited to 'drivers/gpu/drm/drm_lease.c')
| -rw-r--r-- | drivers/gpu/drm/drm_lease.c | 16 | 
1 files changed, 1 insertions, 15 deletions
| diff --git a/drivers/gpu/drm/drm_lease.c b/drivers/gpu/drm/drm_lease.c index 50c73c0a20b9..b54fb78a283c 100644 --- a/drivers/gpu/drm/drm_lease.c +++ b/drivers/gpu/drm/drm_lease.c @@ -553,24 +553,13 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,  	/* Clone the lessor file to create a new file for us */  	DRM_DEBUG_LEASE("Allocating lease file\n"); -	path_get(&lessor_file->f_path); -	lessee_file = alloc_file(&lessor_file->f_path, -				 lessor_file->f_mode, -				 fops_get(lessor_file->f_inode->i_fop)); - +	lessee_file = file_clone_open(lessor_file);  	if (IS_ERR(lessee_file)) {  		ret = PTR_ERR(lessee_file);  		goto out_lessee;  	} -	/* Initialize the new file for DRM */ -	DRM_DEBUG_LEASE("Initializing the file with %p\n", lessee_file->f_op->open); -	ret = lessee_file->f_op->open(lessee_file->f_inode, lessee_file); -	if (ret) -		goto out_lessee_file; -  	lessee_priv = lessee_file->private_data; -  	/* Change the file to a master one */  	drm_master_put(&lessee_priv->master);  	lessee_priv->master = lessee; @@ -588,9 +577,6 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,  	DRM_DEBUG_LEASE("drm_mode_create_lease_ioctl succeeded\n");  	return 0; -out_lessee_file: -	fput(lessee_file); -  out_lessee:  	drm_master_put(&lessee); |