KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(23)

接前一篇文章:KWin、libdrm、DRM从上到下全过程 —— drmModeAddFBxxx(22)

上一回讲解了i915_gem_object_lookup_rcu函数的第1个参数struct drm_file *file,本回讲解其第2个参数u32 handle。

(2)参数u32 handle

说起来,handle要比struct drm_file *file参数好理解多了,没有那么绕。虽说没有那么绕,但也只是说没有涉及那么多结构,流程上可是一点也不能少。

为了便于理解和回顾,再次贴出i915_gem_object_lookup函数的代码:

static inline struct drm_i915_gem_object *
i915_gem_object_lookup(struct drm_file *file, u32 handle)
{
	struct drm_i915_gem_object *obj;
 
	rcu_read_lock();
	obj = i915_gem_object_lookup_rcu(file, handle);
	obj = i915_gem_object_get_rcu(obj);
	rcu_read_unlock();
 
	return obj;
}

以及i915_gem_object_lookup_rcu函数的代码:

/**
 * i915_gem_obj

猜你喜欢

转载自blog.csdn.net/phmatthaus/article/details/134891298