<div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace">Indeed, we argued at first to let the driver handle the ioctls directly,</div><div class="gmail_default" style="font-family:monospace,monospace">but we would like to use the DRM interface if possible.</div></div><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Sep 4, 2017 at 6:26 PM, Chris Wilson <span dir="ltr"><<a href="mailto:chris@chris-wilson.co.uk" target="_blank">chris@chris-wilson.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Quoting Marius Vlad (2017-09-04 16:16:41)<br>
<span class="">> From: Marius Vlad <<a href="mailto:marius.vlad0@gmail.com">marius.vlad0@gmail.com</a>><br>
><br>
> Currently driver-specific ioctls have to be declared static and are confined to<br>
> DRM core driver. This patch series provides the means to remove those constrains<br>
> and allow to register driver-specific ioctls dynamically by keeping a list of<br>
> registered ioctls in struct drm_driver, then each component of the driver can<br>
> then register its own specific ioctls using this interface.<br>
><br>
> The driver must assign ioctl_register/ioctl_<wbr>deregister in<br>
> its drm_driver structure in order to make use of it.<br>
><br>
> While SoC drivers benefit the most from this approach (by not polluting DRM core<br>
> driver and allowing sub drivers to implement and register driver-specific<br>
> ioctls dynamically), further patches shows how easy is to convert drm/i915 to<br>
> this approach by registering GEM and perf ioctls separately.<br>
<br>
</span>Why?<br>
<br>
You do not have to use drm_ioctl directly... Avoiding it would reduce<br>
our ioctl overhead considerably, for example reducing busy_ioctl from<br>
around 110ns to around 45ns.<br>
<span class="HOEnZb"><font color="#888888">-Chris<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><font face="monospace, monospace">Marius Vlad</font></div></div>
</div>