Subversion Repositories Kolibri OS

Rev

Rev 6660 | Rev 6937 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 6660 Rev 6935
Line 26... Line 26...
26
 */
26
 */
Line 27... Line 27...
27
 
27
 
28
#include 
28
#include 
29
#include 
29
#include 
-
 
30
#include 
30
#include 
31
#include 
31
#include 
32
#include 
32
#include 
33
#include 
33
#include 
34
#include 
34
#include 
35
#include 
Line 307... Line 308...
307
	drm_gem_object_reference(obj);
308
	drm_gem_object_reference(obj);
308
	obj->handle_count++;
309
	obj->handle_count++;
309
	spin_unlock(&file_priv->table_lock);
310
	spin_unlock(&file_priv->table_lock);
310
	idr_preload_end();
311
	idr_preload_end();
311
	mutex_unlock(&dev->object_name_lock);
312
	mutex_unlock(&dev->object_name_lock);
312
	if (ret < 0) {
313
	if (ret < 0)
313
		drm_gem_object_handle_unreference_unlocked(obj);
-
 
314
		return ret;
314
		goto err_unref;
315
	}
315
 
316
	*handlep = ret;
316
	*handlep = ret;
Line 317... Line 317...
317
 
317
 
318
//	ret = drm_vma_node_allow(&obj->vma_node, file_priv->filp);
318
//	ret = drm_vma_node_allow(&obj->vma_node, file_priv->filp);
319
//	if (ret) {
319
//	if (ret) {
320
//		drm_gem_handle_delete(file_priv, *handlep);
320
//		drm_gem_handle_delete(file_priv, *handlep);
321
//		return ret;
321
//		return ret;
Line 322... Line 322...
322
//	}
322
//	}
323
 
323
 
324
	if (dev->driver->gem_open_object) {
324
	if (dev->driver->gem_open_object) {
325
		ret = dev->driver->gem_open_object(obj, file_priv);
-
 
326
		if (ret) {
325
		ret = dev->driver->gem_open_object(obj, file_priv);
327
			drm_gem_handle_delete(file_priv, *handlep);
-
 
328
			return ret;
326
		if (ret)
Line 329... Line 327...
329
		}
327
			goto err_revoke;
-
 
328
	}
-
 
329
 
-
 
330
	return 0;
-
 
331
 
-
 
332
err_revoke:
-
 
333
//	drm_vma_node_revoke(&obj->vma_node, file_priv->filp);
-
 
334
err_remove:
-
 
335
	spin_lock(&file_priv->table_lock);
-
 
336
	idr_remove(&file_priv->object_idr, *handlep);
-
 
337
	spin_unlock(&file_priv->table_lock);
330
	}
338
err_unref:
Line 331... Line 339...
331
 
339
	drm_gem_object_handle_unreference_unlocked(obj);
332
	return 0;
340
	return ret;
333
}
341
}