lkml.org 
[lkml]   [2009]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] drm: convert drm_ioctl to unlocked_ioctl
From
On Thu, Dec 17, 2009 at 8:17 AM, Arnd Bergmann <arnd@arndb.de> wrote:
> drm_ioctl is called with the Big Kernel Lock held,
> which shows up very high in statistics on vfs_ioctl.
>
> Moving the lock into the drm_ioctl function itself
> makes sure we blame the right subsystem and it gets
> us one step closer to eliminating the locked version
> of fops->ioctl.
>
> Since drm_ioctl does not require the lock itself,
> we only need to hold it while calling the specific
> handler. The 32 bit conversion handlers do not
> interact with any other code, so they don't need
> the BKL here either and can just call drm_ioctl.
>
> As a bonus, this cleans up all the other users
> of drm_ioctl which now no longer have to find
> the inode or call lock_kernel.
>

This looks good, I've taken this and I've squashed
the generic pieces of your RFC into this (i.e.
I haven't modified the drivers, but just added the
flag to allow the ioctls to be unlocked if the driver
selects them).

Do you think we should try and get this in soon,
its seems like it shouldn't have any regressions
unless we start switching drivers over.

Dave.


\
 
 \ /
  Last update: 2009-12-18 02:29    [W:1.596 / U:0.672 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site