# git rev-parse -q --verify 15a2bc4dbb9cfed1c661a657fcb10798150b7598^{commit} 15a2bc4dbb9cfed1c661a657fcb10798150b7598 already have revision, skipping fetch # git checkout -q -f -B kisskb 15a2bc4dbb9cfed1c661a657fcb10798150b7598 # git clean -qxdf # < git log -1 # commit 15a2bc4dbb9cfed1c661a657fcb10798150b7598 # Merge: 9ff7258575d5 3977e285ee89 # Author: Linus Torvalds # Date: Thu Jun 4 14:07:08 2020 -0700 # # Merge branch 'exec-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace # # Pull execve updates from Eric Biederman: # "Last cycle for the Nth time I ran into bugs and quality of # implementation issues related to exec that could not be easily be # fixed because of the way exec is implemented. So I have been digging # into exec and cleanup up what I can. # # I don't think I have exec sorted out enough to fix the issues I # started with but I have made some headway this cycle with 4 sets of # changes. # # - promised cleanups after introducing exec_update_mutex # # - trivial cleanups for exec # # - control flow simplifications # # - remove the recomputation of bprm->cred # # The net result is code that is a bit easier to understand and work # with and a decrease in the number of lines of code (if you don't count # the added tests)" # # * 'exec-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ebiederm/user-namespace: (24 commits) # exec: Compute file based creds only once # exec: Add a per bprm->file version of per_clear # binfmt_elf_fdpic: fix execfd build regression # selftests/exec: Add binfmt_script regression test # exec: Remove recursion from search_binary_handler # exec: Generic execfd support # exec/binfmt_script: Don't modify bprm->buf and then return -ENOEXEC # exec: Move the call of prepare_binprm into search_binary_handler # exec: Allow load_misc_binary to call prepare_binprm unconditionally # exec: Convert security_bprm_set_creds into security_bprm_repopulate_creds # exec: Factor security_bprm_creds_for_exec out of security_bprm_set_creds # exec: Teach prepare_exec_creds how exec treats uids & gids # exec: Set the point of no return sooner # exec: Move handling of the point of no return to the top level # exec: Run sync_mm_rss before taking exec_update_mutex # exec: Fix spelling of search_binary_handler in a comment # exec: Move the comment from above de_thread to above unshare_sighand # exec: Rename flush_old_exec begin_new_exec # exec: Move most of setup_new_exec into flush_old_exec # exec: In setup_new_exec cache current in the local variable me # ... # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux-gcc --version # < /opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux-ld --version # < git log --format=%s --max-count=1 15a2bc4dbb9cfed1c661a657fcb10798150b7598 # < make -s -j 24 ARCH=nds32 O=/kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- allmodconfig # < make -s -j 24 ARCH=nds32 O=/kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- help # make -s -j 24 ARCH=nds32 O=/kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- olddefconfig # make -s -j 24 ARCH=nds32 O=/kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- :1511:2: warning: #warning syscall clone3 not implemented [-Wcpp] In file included from /kisskb/src/include/linux/printk.h:7, from /kisskb/src/include/linux/kernel.h:15, from /kisskb/src/kernel/rcu/rcuperf.c:13: /kisskb/src/kernel/rcu/rcuperf.c: In function 'kfree_perf_init': /kisskb/src/include/linux/kern_levels.h:5:18: warning: format '%lu' expects argument of type 'long unsigned int', but argument 2 has type 'unsigned int' [-Wformat=] #define KERN_SOH "\001" /* ASCII Start Of Header */ ^~~~~~ /kisskb/src/include/linux/kern_levels.h:9:20: note: in expansion of macro 'KERN_SOH' #define KERN_ALERT KERN_SOH "1" /* action must be taken immediately */ ^~~~~~~~ /kisskb/src/include/linux/printk.h:318:9: note: in expansion of macro 'KERN_ALERT' printk(KERN_ALERT pr_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~ /kisskb/src/kernel/rcu/rcuperf.c:726:2: note: in expansion of macro 'pr_alert' pr_alert("kfree object size=%lu\n", kfree_mult * sizeof(struct kfree_obj)); ^~~~~~~~ /kisskb/src/kernel/rcu/rcuperf.c:726:32: note: format string is defined here pr_alert("kfree object size=%lu\n", kfree_mult * sizeof(struct kfree_obj)); ~~^ %u /kisskb/src/kernel/module.c: In function 'do_init_module': /kisskb/src/kernel/module.c:3593:2: error: implicit declaration of function 'module_enable_ro'; did you mean 'module_enable_x'? [-Werror=implicit-function-declaration] module_enable_ro(mod, true); ^~~~~~~~~~~~~~~~ module_enable_x cc1: some warnings being treated as errors make[2]: *** [/kisskb/src/scripts/Makefile.build:267: kernel/module.o] Error 1 make[2]: *** Waiting for unfinished jobs.... make[1]: *** [/kisskb/src/Makefile:1735: kernel] Error 2 make[1]: *** Waiting for unfinished jobs.... In file included from /kisskb/src/include/linux/printk.h:403, from /kisskb/src/include/linux/kernel.h:15, from /kisskb/src/include/linux/list.h:9, from /kisskb/src/include/linux/kobject.h:19, from /kisskb/src/include/linux/of.h:17, from /kisskb/src/include/linux/irqdomain.h:35, from /kisskb/src/include/linux/acpi.h:13, from /kisskb/src/sound/soc/codecs/max98390.c:9: /kisskb/src/sound/soc/codecs/max98390.c: In function 'max98390_dsm_init': /kisskb/src/sound/soc/codecs/max98390.c:781:3: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'size_t' {aka 'const unsigned int'} [-Wformat=] "max98390: param fw size %ld\n", ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ /kisskb/src/include/linux/dynamic_debug.h:125:15: note: in definition of macro '__dynamic_func_call' func(&id, ##__VA_ARGS__); \ ^~~~~~~~~~~ /kisskb/src/include/linux/dynamic_debug.h:157:2: note: in expansion of macro '_dynamic_func_call' _dynamic_func_call(fmt,__dynamic_dev_dbg, \ ^~~~~~~~~~~~~~~~~~ /kisskb/src/include/linux/dev_printk.h:114:2: note: in expansion of macro 'dynamic_dev_dbg' dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~~~~~~~~~~~~~ /kisskb/src/include/linux/dev_printk.h:114:23: note: in expansion of macro 'dev_fmt' dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__) ^~~~~~~ /kisskb/src/sound/soc/codecs/max98390.c:780:2: note: in expansion of macro 'dev_dbg' dev_dbg(component->dev, ^~~~~~~ In file included from /kisskb/src/drivers/net/phy/mdio-cavium.c:11: /kisskb/src/drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_set_mode': /kisskb/src/drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_readq(addr) readq((void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:21:16: note: in expansion of macro 'oct_mdio_readq' smi_clk.u64 = oct_mdio_readq(p->register_base + SMI_CLK); ^~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:24:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_clk.u64, p->register_base + SMI_CLK); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_c45_addr': /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:39:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:47:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_readq(addr) readq((void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:54:16: note: in expansion of macro 'oct_mdio_readq' smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT); ^~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_read': /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:86:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_readq(addr) readq((void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:93:16: note: in expansion of macro 'oct_mdio_readq' smi_rd.u64 = oct_mdio_readq(p->register_base + SMI_RD_DAT); ^~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.c: In function 'cavium_mdiobus_write': /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:125:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_wr.u64, p->register_base + SMI_WR_DAT); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:131:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_cmd.u64, p->register_base + SMI_CMD); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:114:37: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_readq(addr) readq((void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-cavium.c:138:16: note: in expansion of macro 'oct_mdio_readq' smi_wr.u64 = oct_mdio_readq(p->register_base + SMI_WR_DAT); ^~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-octeon.c: In function 'octeon_mdiobus_probe': /kisskb/src/drivers/net/phy/mdio-octeon.c:48:3: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] (u64)devm_ioremap(&pdev->dev, mdio_phys, regsize); ^ In file included from /kisskb/src/drivers/net/phy/mdio-octeon.c:14: /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-octeon.c:56:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-octeon.c:77:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/net/phy/mdio-octeon.c: In function 'octeon_mdiobus_remove': /kisskb/src/drivers/net/phy/mdio-cavium.h:113:48: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] #define oct_mdio_writeq(val, addr) writeq(val, (void *)addr) ^ /kisskb/src/drivers/net/phy/mdio-octeon.c:91:2: note: in expansion of macro 'oct_mdio_writeq' oct_mdio_writeq(smi_en.u64, bus->register_base + SMI_EN); ^~~~~~~~~~~~~~~ /kisskb/src/drivers/input/joystick/analog.c:160:2: warning: #warning Precise timer not defined for this architecture. [-Wcpp] #warning Precise timer not defined for this architecture. ^~~~~~~ make: *** [Makefile:180: sub-make] Error 2 Command 'make -s -j 24 ARCH=nds32 O=/kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 CROSS_COMPILE=/opt/cross/kisskb/korg/gcc-8.1.0-nolibc/nds32le-linux/bin/nds32le-linux- ' returned non-zero exit status 2 # rm -rf /kisskb/build/linus_nds32-allmodconfig_nds32le-gcc8 # Build took: 0:13:17.459761