{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(-)