Subversion Repositories Kolibri OS

Rev

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

Rev 3480 Rev 4075
Line 102... Line 102...
102
	if (drm_ht_create(&mm->offset_hash, 12)) {
102
	if (drm_ht_create(&mm->offset_hash, 12)) {
103
		kfree(mm);
103
		kfree(mm);
104
		return -ENOMEM;
104
		return -ENOMEM;
105
	}
105
	}
Line 106... Line 106...
106
 
106
 
107
	if (drm_mm_init(&mm->offset_manager, DRM_FILE_PAGE_OFFSET_START,
107
	drm_mm_init(&mm->offset_manager, DRM_FILE_PAGE_OFFSET_START,
108
			DRM_FILE_PAGE_OFFSET_SIZE)) {
-
 
109
		drm_ht_remove(&mm->offset_hash);
-
 
110
		kfree(mm);
-
 
111
		return -ENOMEM;
-
 
Line 112... Line 108...
112
	}
108
		    DRM_FILE_PAGE_OFFSET_SIZE);
113
 
109
 
Line 114... Line 110...
114
	return 0;
110
	return 0;
Line 445... Line 441...
445
 
441
 
446
	idr_preload(GFP_KERNEL);
442
	idr_preload(GFP_KERNEL);
447
	spin_lock(&dev->object_name_lock);
443
	spin_lock(&dev->object_name_lock);
448
	if (!obj->name) {
444
	if (!obj->name) {
449
		ret = idr_alloc(&dev->object_name_idr, obj, 1, 0, GFP_NOWAIT);
-
 
450
		obj->name = ret;
-
 
451
		args->name = (uint64_t) obj->name;
-
 
452
		spin_unlock(&dev->object_name_lock);
-
 
453
		idr_preload_end();
-
 
454
 
445
		ret = idr_alloc(&dev->object_name_idr, obj, 1, 0, GFP_NOWAIT);
455
		if (ret < 0)
446
		if (ret < 0)
-
 
447
			goto err;
456
			goto err;
448
 
Line 457... Line 449...
457
		ret = 0;
449
		obj->name = ret;
458
 
450
 
459
		/* Allocate a reference for the name table.  */
451
		/* Allocate a reference for the name table.  */
-
 
452
		drm_gem_object_reference(obj);
460
		drm_gem_object_reference(obj);
453
	}
461
	} else {
-
 
462
		args->name = (uint64_t) obj->name;
-
 
463
		spin_unlock(&dev->object_name_lock);
454
 
464
		idr_preload_end();
-
 
Line 465... Line 455...
465
		ret = 0;
455
		args->name = (uint64_t) obj->name;
-
 
456
		ret = 0;
-
 
457
 
466
	}
458
err:
467
 
459
	spin_unlock(&dev->object_name_lock);
468
err:
460
	idr_preload_end();
Line 469... Line 461...
469
	drm_gem_object_unreference_unlocked(obj);
461
	drm_gem_object_unreference_unlocked(obj);