[git pull] vfs.git compat and uaccess

From: Al Viro
Date: Thu Nov 16 2017 - 21:34:21 EST


{get,put}_compat_sigset() series + assorted compat ioctl stuff +
more set_fs() elimination + a few more timespec64 conversions + several
removals of pointless access_ok() in places where it was followed only by
non-__ variants of primitives.

One conflict (in drivers/staging/pi433); mainline side is purely
whitespace stuff (from commit 69af5d92da20 "Staging: pi433: Fix the position
of brace after if").

The following changes since commit 2bd6bf03f4c1c59381d62c61d03f6cc3fe71f66e:

Linux 4.14-rc1 (2017-09-16 15:47:51 -0700)

are available in the git repository at:

git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git misc.compat

for you to fetch changes up to 96271654f55c74ff7325fbdfc535466c9deb0ce6:

coredump: call do_unlinkat directly instead of sys_unlink (2017-11-10 08:48:49 -0500)

----------------------------------------------------------------
Al Viro (17):
get rid of {get,put}_compat_itimerspec()
get_compat_sigset()
parisc: switch to {get,put}_compat_sigset()
ppc: switch to {get,put}_compat_sigset()
s390: switch to {get,put}_compat_sigset()
sparc: switch to {get,put}_compat_sigset()
mips: switch to {get,put}_compat_sigset()
sched_rr_get_interval(): move compat to native, get rid of set_fs()
i2c compat ioctls: move to ->compat_ioctl()
VT_RESIZEX: get rid of field-by-field copyin
selection: get rid of field-by-field copyin
r128: switch compat ioctls to drm_ioctl_kernel()
mtdchar: get rid of pointless access_ok()
cxlflash: get rid of pointless access_ok()
pi433: sanitize ioctl
ipmi: get rid of pointless access_ok()
ext4: take handling of EXT4_IOC_GROUP_ADD into a helper, get rid of set_fs()

Christoph Hellwig (2):
fs: expose do_unlinkat for built-in callers
coredump: call do_unlinkat directly instead of sys_unlink

Deepa Dinamani (2):
select: Use get/put_timespec64
io_getevents: Use timespec64 to represent timeouts

Dmitry V. Levin (3):
signal: replace sigset_to_compat() with put_compat_sigset()
signal: simplify compat_sigpending()
signal: lift sigset size check out of do_sigpending()

arch/mips/include/asm/compat-signal.h | 37 +----
arch/parisc/kernel/signal.c | 9 +-
arch/parisc/kernel/signal32.c | 13 --
arch/parisc/kernel/signal32.h | 2 -
arch/powerpc/kernel/signal_32.c | 31 +---
arch/s390/kernel/compat_signal.c | 33 +----
arch/sparc/kernel/signal32.c | 9 +-
arch/sparc/kernel/sys_sparc32.c | 8 +-
drivers/char/ipmi/bt-bmc.c | 6 -
drivers/gpu/drm/r128/r128_drv.h | 4 +
drivers/gpu/drm/r128/r128_ioc32.c | 99 ++++++-------
drivers/gpu/drm/r128/r128_state.c | 6 +-
drivers/i2c/i2c-dev.c | 268 +++++++++++++++++++++++-----------
drivers/mtd/mtdchar.c | 24 +--
drivers/scsi/cxlflash/main.c | 6 -
drivers/staging/pi433/pi433_if.c | 92 ++----------
drivers/tty/vt/selection.c | 50 +++----
drivers/tty/vt/vt_ioctl.c | 68 ++++-----
fs/aio.c | 55 +++----
fs/compat_ioctl.c | 122 ----------------
fs/coredump.c | 7 +-
fs/eventpoll.c | 4 +-
fs/ext4/ioctl.c | 86 +++++------
fs/internal.h | 1 +
fs/namei.c | 12 +-
fs/select.c | 68 ++++-----
fs/signalfd.c | 4 +-
include/linux/compat.h | 10 +-
kernel/compat.c | 77 ++++------
kernel/sched/core.c | 36 ++++-
kernel/signal.c | 77 +++-------
virt/kvm/kvm_main.c | 7 +-
32 files changed, 508 insertions(+), 823 deletions(-)