Beispiel #1
0
void
drm_gem_release(struct drm_device *dev, struct drm_file *file_priv)
{

	drm_gem_names_foreach(&file_priv->object_names,
	    drm_gem_object_release_handle, NULL);
	drm_gem_names_fini(&file_priv->object_names);
}
Beispiel #2
0
void i915_gem_context_close(struct drm_device *dev, struct drm_file *file)
{
	struct drm_i915_file_private *file_priv = file->driver_priv;

	DRM_LOCK(dev);
	drm_gem_names_foreach(&file_priv->context_idr, context_idr_cleanup, NULL);
	drm_gem_names_fini(&file_priv->context_idr);
	DRM_UNLOCK(dev);
}
Beispiel #3
0
void i915_gem_context_close(struct drm_device *dev, struct drm_file *file)
{
	struct drm_i915_file_private *file_priv = file->driver_priv;

	//DRM_LOCK(dev); /* Called from preclose(), the lock is already owned. */
	drm_gem_names_foreach(&file_priv->context_idr, context_idr_cleanup, NULL);
	drm_gem_names_fini(&file_priv->context_idr);
	//DRM_UNLOCK(dev);
}
uint32_t
drm_gem_find_name(struct drm_gem_names *names, void *ptr)
{
	struct drm_gem_ptr_match_arg arg;

	arg.res = 0;
	arg.ptr = ptr;
	drm_gem_names_foreach(names, drm_gem_ptr_match, &arg);
	return (arg.res);
}