Re: [git pull] misc uaccess stuff

From: Nathan Chancellor
Date: Wed Jun 03 2020 - 16:44:44 EST


On Wed, Jun 03, 2020 at 08:23:06PM +0100, Al Viro wrote:
> uaccess patches that really didn't fit anywhere else.
> kvm_hv_set_msr() patch left as-is; __put_user() is by no means
> final there, but that'll be dealt with along with other KVM
> uaccess stuff next cycle.
>
> The following changes since commit b44f687386875b714dae2afa768e73401e45c21c:
>
> drm/i915/gem: Replace user_access_begin by user_write_access_begin (2020-05-01 12:35:22 +1000)
>
> are available in the git repository at:
>
> git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs.git uaccess.misc
>
> for you to fetch changes up to 4ec76a2b74c72ef9eed875ce63e27a5e7f8d80cc:
>
> bpf: make bpf_check_uarg_tail_zero() use check_zeroed_user() (2020-06-01 14:42:37 -0400)
>
> ----------------------------------------------------------------
> Al Viro (9):
> pselect6() and friends: take handling the combined 6th/7th args into helper
> binfmt_elf: don't bother with __{put,copy_to}_user()
> binfmt_elf_fdpic: don't use __... uaccess primitives

This patch breaks arm32:

$ make -sj"$(nproc)" ARCH=arm CROSS_COMPILE=arm-linux-gnueabi- allyesconfig fs/binfmt_elf_fdpic.o
...
In file included from ./include/linux/sched/task.h:11,
from ./include/linux/sched/signal.h:9,
from ./include/linux/rcuwait.h:6,
from ./include/linux/percpu-rwsem.h:7,
from ./include/linux/fs.h:34,
from fs/binfmt_elf_fdpic.c:11:
./include/linux/uaccess.h:149:1: note: declared here
149 | copy_to_user(void __user *to, const void *from, unsigned long n)
| ^~~~~~~~~~~~
fs/binfmt_elf_fdpic.c:612:7: error: too few arguments to function 'copy_to_user'
612 | if (copy_to_user(ent + nr, &v)) \
| ^~~~~~~~~~~~
fs/binfmt_elf_fdpic.c:659:2: note: in expansion of macro 'NEW_AUX_ENT'
659 | NEW_AUX_ENT(AT_EXECFN, bprm->exec);
| ^~~~~~~~~~~
...

Cheers,
Nathan