[Intel-gfx] [PATCH 17/42] drm/i915: Pass around sg_table to get_pages/put_pages backend
Tvrtko Ursulin
tvrtko.ursulin at linux.intel.com
Mon Oct 17 10:52:27 UTC 2016
On 14/10/2016 10:43, Chris Wilson wrote:
> On Fri, Oct 14, 2016 at 10:28:42AM +0100, Tvrtko Ursulin wrote:
>> diff --git a/drivers/gpu/drm/i915/i915_drv.h b/drivers/gpu/drm/i915/i915_drv.h
>> index 3c22d49005fe..271e63c8f037 100644
>> --- a/drivers/gpu/drm/i915/i915_drv.h
>> +++ b/drivers/gpu/drm/i915/i915_drv.h
>> @@ -2175,8 +2175,8 @@ struct drm_i915_gem_object_ops {
>> * being released or under memory pressure (where we attempt to
>> * reap pages for the shrinker).
>> */
>> - int (*get_pages)(struct drm_i915_gem_object *);
>> - void (*put_pages)(struct drm_i915_gem_object *);
>> + struct sg_table *(*get_pages)(struct drm_i915_gem_object *);
>> + void (*put_pages)(struct drm_i915_gem_object *, struct sg_table *);
>>
>> Idea is that put_pages vfunc does not need struct mutex? Or it acquires
>> it on demand inside it, which means struct mutex will nest inside the
>> mm.lock?
> Right, it loses the mutex within get/put pages and I am no longer
> concerned about the number of workers. Though that is mainly because of
> another patch to improve execbuf + userptr workloads.
Is that other patch before or after this one? Or in a different series
altogether? In any case, why should this change be in this patch,
especially when it is not commented anywhere?
Regards,
Tvrtko
More information about the Intel-gfx
mailing list