[Intel-gfx] [PATCH v5] drm/i915: Engine discovery query

Tvrtko Ursulin tvrtko.ursulin at linux.intel.com
Wed Oct 3 12:51:58 UTC 2018


On 03/10/2018 13:42, Chris Wilson wrote:
> Quoting Chris Wilson (2018-10-03 13:28:09)
>> Quoting Tvrtko Ursulin (2018-10-03 10:58:55)
>>> +static int
>>> +query_engine_info(struct drm_i915_private *i915,
>>> +                 struct drm_i915_query_item *query_item)
>>> +{
>>> +       for_each_engine(engine, i915, id) {
>>> +               struct drm_i915_engine_info info;
>>> +
>>> +               if (__copy_from_user(&info, info_ptr, sizeof(info)))
>>> +                       return -EFAULT;
>>> +
>>> +               if (memcmp(&info, &zero_info, sizeof(info)))
>>> +                       return -EINVAL;
>>
>> You want to have this be an in/out?

I am not sure, perhaps there isn't any benefit in checking that 
userspace provided a zeroed block at this level since it is an out only 
block. Instead I could just zero the unused fields for them?

> Fwiw, you can use memchr_inv() instead of having a zeroed struct.

Ah cool, thanks, saw that one before but forgot about it.

Regards,

Tvrtko


More information about the Intel-gfx mailing list