[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <20170706091104.GI10672@ZenIV.linux.org.uk>
Date: Thu, 6 Jul 2017 10:11:04 +0100
From: Al Viro <viro@...IV.linux.org.uk>
To: Linus Torvalds <torvalds@...ux-foundation.org>
Cc: linux-kernel@...r.kernel.org, linux-fsdevel@...r.kernel.org,
David Airlie <airlied@...ux.ie>
Subject: [git pull] vfs.git pile 6
[6 more piles tonight with several more left for tomorrow]
DRM compat ioctl handling. Kills double-copies in there and
tons of field-by-field copyin/copyout. Several dead ioctls put to
rest, while we are at it - the native counterparts had been gone for
a decade, so we can bloody well fail early on the compat side. No
point rearranging the 32bit structure into 64bit one (and back) only
to be told "piss off, I don't know that ioctl" by the native code...
There's a trivial fixup patch tagged on the end of that branch;
I could fold it back, but one of the affected commits is early in the
queue and fixup does not affect gcc at all - it's dealing with sparse
misannotations only, so it's not a bisect hazard and I decided to leave
it at the branch tip.
The following changes since commit 2ea659a9ef488125eb46da6eb571de5eae5c43f6:
Linux 4.12-rc1 (2017-05-13 13:19:49 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git work.drm
for you to fetch changes up to b87b786b1fa1aa1bba33da22c8bb6b3ec7b608d2:
Fix trivial misannotations (2017-07-06 02:00:00 -0400)
----------------------------------------------------------------
Al Viro (29):
new helper: drm_ioctl_kernel()
drm_compat_ioctl(): prepare for conversions to drm_ioctl_kernel()
switch compat_drm_addbufs() to drm_ioctl_kernel()
switch compat_drm_version() to drm_ioctl_kernel()
switch compat_drm_getunique() to drm_ioctl_kernel()
compat_drm_setunique(): don't bother
switch compat_drm_getmap() to drm_ioctl_kernel()
switch compat_drm_infobufs() to drm_ioctl_kernel()
switch compat_drm_getclient() to drm_ioctl_kernel()
switch compat_drm_getstats() to drm_ioctl_kernel()
switch compat_drm_addmap() to drm_ioctl_kernel()
switch compat_drm_markbufs() to drm_ioctl_kernel()
switch compat_drm_freebufs() to drm_ioctl_kernel()
switch compat_drm_setsareactx() to drm_ioctl_kernel()
switch compat_drm_getsareactx() to drm_ioctl_kernel()
switch compat_drm_resctx() to drm_ioctl_kernel()
switch compat_drm_dma() to drm_ioctl_kernel()
compat_drm: switch AGP compat ioctls to drm_ioctl_kernel()
compat_drm: switch sg ioctls
switch compat_drm_update_draw()
switch compat_drm_wait_vblank() to drm_ioctl_kernel()
switch compat_drm_mode_addfb2() to drm_ioctl_kernel()
switch compat_drm_rmmap() to drm_ioctl_kernel()
switch compat_drm_mapbufs() to drm_ioctl_kernel()
drm_compat_ioctl(): tidy up a bit
drm compat: ia64 is not biarch
radeon: take out dead compat ioctls
mga: switch compat ioctls to drm_ioctl_kernel()
Fix trivial misannotations
drivers/gpu/drm/drm_bufs.c | 116 +++---
drivers/gpu/drm/drm_internal.h | 3 +
drivers/gpu/drm/drm_ioc32.c | 750 +++++++++++++---------------------
drivers/gpu/drm/drm_ioctl.c | 48 ++-
drivers/gpu/drm/drm_legacy.h | 7 +
drivers/gpu/drm/mga/mga_drv.h | 2 +
drivers/gpu/drm/mga/mga_ioc32.c | 149 +++----
drivers/gpu/drm/mga/mga_state.c | 2 +-
drivers/gpu/drm/radeon/Makefile | 1 -
drivers/gpu/drm/radeon/radeon_drv.c | 18 +-
drivers/gpu/drm/radeon/radeon_ioc32.c | 424 -------------------
include/drm/drm_ioctl.h | 1 +
12 files changed, 476 insertions(+), 1045 deletions(-)
delete mode 100644 drivers/gpu/drm/radeon/radeon_ioc32.c
Powered by blists - more mailing lists