Hi Michael, I love your patch! Yet something to improve:
[auto build test ERROR on powerpc/next] [also build test ERROR on v4.19-rc7 next-20181010] [if your patch is applied to the wrong git tree, please drop us a note to help improve the system] url: https://github.com/0day-ci/linux/commits/Michael-Ellerman/powerpc-Move-core-kernel-logic-into-arch-powerpc-Kbuild/20181010-205834 base: https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git next config: powerpc-defconfig (attached as .config) compiler: powerpc64-linux-gnu-gcc (Debian 7.2.0-11) 7.2.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # save the attached .config to linux build tree GCC_VERSION=7.2.0 make.cross ARCH=powerpc All errors (new ones prefixed by >>): In file included from arch/powerpc/kernel/signal_32.c:32:0: include/linux/compat.h: In function 'put_compat_sigset': >> include/linux/compat.h:494:51: error: this statement may fall through >> [-Werror=implicit-fallthrough=] case 4: v.sig[7] = (set->sig[3] >> 32); v.sig[6] = set->sig[3]; ~~~~~~~~~^~~~~~~~~~~~~ include/linux/compat.h:495:2: note: here case 3: v.sig[5] = (set->sig[2] >> 32); v.sig[4] = set->sig[2]; ^~~~ include/linux/compat.h:495:51: error: this statement may fall through [-Werror=implicit-fallthrough=] case 3: v.sig[5] = (set->sig[2] >> 32); v.sig[4] = set->sig[2]; ~~~~~~~~~^~~~~~~~~~~~~ include/linux/compat.h:496:2: note: here case 2: v.sig[3] = (set->sig[1] >> 32); v.sig[2] = set->sig[1]; ^~~~ include/linux/compat.h:496:51: error: this statement may fall through [-Werror=implicit-fallthrough=] case 2: v.sig[3] = (set->sig[1] >> 32); v.sig[2] = set->sig[1]; ~~~~~~~~~^~~~~~~~~~~~~ include/linux/compat.h:497:2: note: here case 1: v.sig[1] = (set->sig[0] >> 32); v.sig[0] = set->sig[0]; ^~~~ cc1: all warnings being treated as errors -- arch/powerpc/kernel/nvram_64.c: In function 'dev_nvram_ioctl': >> arch/powerpc/kernel/nvram_64.c:811:3: error: this statement may fall through >> [-Werror=implicit-fallthrough=] printk(KERN_WARNING "nvram: Using obsolete PMAC_NVRAM_GET_OFFSET ioctl\n"); ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ arch/powerpc/kernel/nvram_64.c:812:2: note: here case IOC_NVRAM_GET_OFFSET: { ^~~~ cc1: all warnings being treated as errors -- In file included from include/linux/kvm_host.h:14:0, from arch/powerpc/kvm/../../../virt/kvm/kvm_main.c:21: include/linux/signal.h: In function 'sigemptyset': >> include/linux/signal.h:180:22: error: this statement may fall through >> [-Werror=implicit-fallthrough=] case 2: set->sig[1] = 0; ~~~~~~~~~~~~^~~ include/linux/signal.h:181:2: note: here case 1: set->sig[0] = 0; ^~~~ cc1: all warnings being treated as errors -- arch/powerpc/platforms/powermac/feature.c: In function 'g5_i2s_enable': >> arch/powerpc/platforms/powermac/feature.c:1477:6: error: this statement may >> fall through [-Werror=implicit-fallthrough=] if (macio->type == macio_shasta) ^ arch/powerpc/platforms/powermac/feature.c:1479:2: note: here default: ^~~~~~~ cc1: all warnings being treated as errors -- arch/powerpc/xmon/xmon.c: In function 'do_spu_cmd': >> arch/powerpc/xmon/xmon.c:4023:24: error: this statement may fall through >> [-Werror=implicit-fallthrough=] if (isxdigit(subcmd) || subcmd == '\n') arch/powerpc/xmon/xmon.c:4025:2: note: here case 'f': ^~~~ cc1: all warnings being treated as errors vim +494 include/linux/compat.h fde9fc76 Matt Redfearn 2018-02-19 481 fde9fc76 Matt Redfearn 2018-02-19 482 /* fde9fc76 Matt Redfearn 2018-02-19 483 * Defined inline such that size can be compile time constant, which avoids fde9fc76 Matt Redfearn 2018-02-19 484 * CONFIG_HARDENED_USERCOPY complaining about copies from task_struct fde9fc76 Matt Redfearn 2018-02-19 485 */ fde9fc76 Matt Redfearn 2018-02-19 486 static inline int fde9fc76 Matt Redfearn 2018-02-19 487 put_compat_sigset(compat_sigset_t __user *compat, const sigset_t *set, fde9fc76 Matt Redfearn 2018-02-19 488 unsigned int size) fde9fc76 Matt Redfearn 2018-02-19 489 { fde9fc76 Matt Redfearn 2018-02-19 490 /* size <= sizeof(compat_sigset_t) <= sizeof(sigset_t) */ fde9fc76 Matt Redfearn 2018-02-19 491 #ifdef __BIG_ENDIAN fde9fc76 Matt Redfearn 2018-02-19 492 compat_sigset_t v; fde9fc76 Matt Redfearn 2018-02-19 493 switch (_NSIG_WORDS) { fde9fc76 Matt Redfearn 2018-02-19 @494 case 4: v.sig[7] = (set->sig[3] >> 32); v.sig[6] = set->sig[3]; fde9fc76 Matt Redfearn 2018-02-19 495 case 3: v.sig[5] = (set->sig[2] >> 32); v.sig[4] = set->sig[2]; fde9fc76 Matt Redfearn 2018-02-19 496 case 2: v.sig[3] = (set->sig[1] >> 32); v.sig[2] = set->sig[1]; fde9fc76 Matt Redfearn 2018-02-19 497 case 1: v.sig[1] = (set->sig[0] >> 32); v.sig[0] = set->sig[0]; fde9fc76 Matt Redfearn 2018-02-19 498 } fde9fc76 Matt Redfearn 2018-02-19 499 return copy_to_user(compat, &v, size) ? -EFAULT : 0; fde9fc76 Matt Redfearn 2018-02-19 500 #else fde9fc76 Matt Redfearn 2018-02-19 501 return copy_to_user(compat, set, size) ? -EFAULT : 0; fde9fc76 Matt Redfearn 2018-02-19 502 #endif fde9fc76 Matt Redfearn 2018-02-19 503 } bebfa101 Andi Kleen 2006-06-26 504 :::::: The code at line 494 was first introduced by commit :::::: fde9fc766e96c494b82931b1d270a9a751be07c0 signals: Move put_compat_sigset to compat.h to silence hardened usercopy :::::: TO: Matt Redfearn <matt.redfe...@mips.com> :::::: CC: James Hogan <jho...@kernel.org> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
.config.gz
Description: application/gzip