# git rev-parse -q --verify 738a7832d21e3d911fcddab98ce260b79010b461^{commit} 738a7832d21e3d911fcddab98ce260b79010b461 already have revision, skipping fetch # git checkout -q -f -B kisskb 738a7832d21e3d911fcddab98ce260b79010b461 # git clean -qxdf # < git log -1 # commit 738a7832d21e3d911fcddab98ce260b79010b461 # Author: Christian Brauner # Date: Thu Apr 18 12:18:39 2019 +0200 # # signal: use fdget() since we don't allow O_PATH # # As stated in the original commit for pidfd_send_signal() we don't allow # to signal processes through O_PATH file descriptors since it is # semantically equivalent to a write on the pidfd. # # We already correctly error out right now and return EBADF if an O_PATH # fd is passed. This is because we use file->f_op to detect whether a # pidfd is passed and O_PATH fds have their file->f_op set to empty_fops # in do_dentry_open() and thus fail the test. # # Thus, there is no regression. It's just semantically correct to use # fdget() and return an error right from there instead of taking a # reference and returning an error later. # # Signed-off-by: Christian Brauner # Acked-by: Oleg Nesterov # Cc: Arnd Bergmann # Cc: "Eric W. Biederman" # Cc: Kees Cook # Cc: Thomas Gleixner # Cc: Jann Horn # Cc: David Howells # Cc: "Michael Kerrisk (man-pages)" # Cc: Andy Lutomirsky # Cc: Andrew Morton # Cc: Oleg Nesterov # Cc: Aleksa Sarai # Cc: Al Viro # Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux-ld --version # < git log --format=%s --max-count=1 738a7832d21e3d911fcddab98ce260b79010b461 # < make -s -j 120 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- randconfig KCONFIG_SEED=0xEC19618 # Added to kconfig CONFIG_PREVENT_FIRMWARE_BUILD=y # yes \n | make -s -j 120 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- oldconfig yes: standard output: Broken pipe # make -s -j 120 ARCH=arm64 O=/kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/aarch64-linux/bin/aarch64-linux- Completed OK # rm -rf /kisskb/build/linus-rand_arm64-randconfig_arm64-gcc8 # Build took: 0:01:42.500264