# git rev-parse -q --verify f511c0b17b081562dca8ac5061dfa86db4c66cc2^{commit} f511c0b17b081562dca8ac5061dfa86db4c66cc2 already have revision, skipping fetch # git checkout -q -f -B kisskb f511c0b17b081562dca8ac5061dfa86db4c66cc2 # git clean -qxdf # git log -1 commit f511c0b17b081562dca8ac5061dfa86db4c66cc2 Author: Linus Torvalds Date: Tue May 30 12:38:59 2017 -0700 "Yes, people use FOLL_FORCE ;)" This effectively reverts commit 8ee74a91ac30 ("proc: try to remove use of FOLL_FORCE entirely") It turns out that people do depend on FOLL_FORCE for the /proc//mem case, and we're talking not just debuggers. Talking to the affected people, the use-cases are: Keno Fischer: "We used these semantics as a hardening mechanism in the julia JIT. By opening /proc/self/mem and using these semantics, we could avoid needing RWX pages, or a dual mapping approach. We do have fallbacks to these other methods (though getting EIO here actually causes an assert in released versions - we'll updated that to make sure to take the fall back in that case). Nevertheless the /proc/self/mem approach was our favored approach because it a) Required an attacker to be able to execute syscalls which is a taller order than getting memory write and b) didn't double the virtual address space requirements (as a dual mapping approach would). I think in general this feature is very useful for anybody who needs to precisely control the execution of some other process. Various debuggers (gdb/lldb/rr) certainly fall into that category, but there's another class of such processes (wine, various emulators) which may want to do that kind of thing. Now, I suspect most of these will have the other process under ptrace control, so maybe allowing (same_mm || ptraced) would be ok, but at least for the sandbox/remote-jit use case, it would be perfectly reasonable to not have the jit server be a ptracer" Robert O'Callahan: "We write to readonly code and data mappings via /proc/.../mem in lots of different situations, particularly when we're adjusting program state during replay to match the recorded execution. Like Julia, we can add workarounds, but they could be expensive." so not only do people use FOLL_FORCE for both reads and writes, but they use it for both the local mm and remote mm. With these comments in mind, we likely also cannot add the "are we actively ptracing" check either, so this keeps the new code organization and does not do a real revert that would add back the original comment about "Maybe we should limit FOLL_FORCE to actual ptrace users?" Reported-by: Keno Fischer Reported-by: Robert O'Callahan Cc: Kees Cook Cc: Andy Lutomirski Cc: Eric Biederman Signed-off-by: Linus Torvalds # < /opt/cross/kisskb/gcc-4.6.3-nolibc/sh4-linux/bin/sh4-linux-gcc --version # < git log --format=%s --max-count=1 f511c0b17b081562dca8ac5061dfa86db4c66cc2 # < make -j 48 ARCH=sh O=/home/kisskb/slave/build/linus_sh-allmodconfig_sh4 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/sh4-linux/bin/sh4-linux- allmodconfig # Added to kconfig CONFIG_BUILD_DOCSRC=n # Added to kconfig CONFIG_MODULE_SIG=n # Added to kconfig CONFIG_SAMPLES=n # yes \n | make -j 48 ARCH=sh O=/home/kisskb/slave/build/linus_sh-allmodconfig_sh4 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/sh4-linux/bin/sh4-linux- oldconfig yes: standard output: Broken pipe yes: write error # make -j 48 ARCH=sh O=/home/kisskb/slave/build/linus_sh-allmodconfig_sh4 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/sh4-linux/bin/sh4-linux- make[1]: Entering directory '/home/kisskb/slave/build/linus_sh-allmodconfig_sh4' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig CHK include/config/kernel.release GEN ./Makefile WRAP arch/sh/include/generated/asm/bitsperlong.h WRAP arch/sh/include/generated/asm/clkdev.h WRAP arch/sh/include/generated/asm/current.h WRAP arch/sh/include/generated/asm/delay.h WRAP arch/sh/include/generated/asm/div64.h WRAP arch/sh/include/generated/asm/emergency-restart.h WRAP arch/sh/include/generated/asm/errno.h WRAP arch/sh/include/generated/asm/exec.h WRAP arch/sh/include/generated/asm/fcntl.h WRAP arch/sh/include/generated/asm/ioctl.h WRAP arch/sh/include/generated/asm/ipcbuf.h WRAP arch/sh/include/generated/asm/irq_regs.h WRAP arch/sh/include/generated/asm/irq_work.h WRAP arch/sh/include/generated/asm/kvm_para.h WRAP arch/sh/include/generated/asm/local.h WRAP arch/sh/include/generated/asm/local64.h WRAP arch/sh/include/generated/asm/mcs_spinlock.h WRAP arch/sh/include/generated/asm/mm-arch-hooks.h WRAP arch/sh/include/generated/asm/mman.h WRAP arch/sh/include/generated/asm/msgbuf.h WRAP arch/sh/include/generated/asm/param.h UPD include/config/kernel.release WRAP arch/sh/include/generated/asm/parport.h WRAP arch/sh/include/generated/asm/percpu.h WRAP arch/sh/include/generated/asm/poll.h WRAP arch/sh/include/generated/asm/preempt.h WRAP arch/sh/include/generated/asm/resource.h WRAP arch/sh/include/generated/asm/rwsem.h WRAP arch/sh/include/generated/asm/sembuf.h WRAP arch/sh/include/generated/asm/serial.h WRAP arch/sh/include/generated/asm/shmbuf.h WRAP arch/sh/include/generated/asm/siginfo.h WRAP arch/sh/include/generated/asm/sizes.h WRAP arch/sh/include/generated/asm/socket.h WRAP arch/sh/include/generated/asm/statfs.h WRAP arch/sh/include/generated/asm/termbits.h WRAP arch/sh/include/generated/asm/termios.h WRAP arch/sh/include/generated/asm/trace_clock.h WRAP arch/sh/include/generated/asm/ucontext.h WRAP arch/sh/include/generated/asm/xor.h CHK include/generated/uapi/linux/version.h UPD include/generated/uapi/linux/version.h CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h HOSTCC scripts/basic/bin2c Using /home/kisskb/slave/src as source for kernel HOSTCC scripts/kallsyms HOSTCC scripts/pnmtologo HOSTCC scripts/conmakehash HOSTCC scripts/asn1_compiler HOSTCC scripts/extract-cert HOSTCC scripts/insert-sys-cert HOSTCC scripts/dtc/dtc.o HOSTCC scripts/dtc/flattree.o HOSTCC scripts/dtc/fstree.o HOSTCC scripts/genksyms/genksyms.o HOSTCC scripts/dtc/data.o SHIPPED scripts/genksyms/parse.tab.c SHIPPED scripts/genksyms/lex.lex.c HOSTCC scripts/dtc/treesource.o HOSTCC scripts/dtc/livetree.o HOSTCC scripts/dtc/srcpos.o CC scripts/mod/empty.o SHIPPED scripts/genksyms/keywords.hash.c HOSTCC scripts/dtc/checks.o HOSTCC scripts/dtc/util.o SHIPPED scripts/genksyms/parse.tab.h SHIPPED scripts/dtc/dtc-parser.tab.c SHIPPED scripts/dtc/dtc-lexer.lex.c SHIPPED scripts/dtc/dtc-parser.tab.h HOSTCC scripts/mod/mk_elfconfig HOSTCC scripts/genksyms/parse.tab.o CC scripts/mod/devicetable-offsets.s HOSTCC scripts/genksyms/lex.lex.o HOSTCC scripts/dtc/dtc-parser.tab.o HOSTCC scripts/selinux/genheaders/genheaders HOSTCC scripts/selinux/mdp/mdp CHK scripts/mod/devicetable-offsets.h UPD scripts/mod/devicetable-offsets.h Generating include/generated/machtypes.h MKELF scripts/mod/elfconfig.h HOSTCC scripts/dtc/dtc-lexer.lex.o HOSTCC scripts/mod/sumversion.o HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/modpost.o CC kernel/bounds.s CHK include/generated/timeconst.h UPD include/generated/timeconst.h CHK include/generated/bounds.h UPD include/generated/bounds.h CC arch/sh/kernel/asm-offsets.s CHK include/generated/asm-offsets.h UPD include/generated/asm-offsets.h CALL /home/kisskb/slave/src/scripts/checksyscalls.sh HOSTLD scripts/dtc/dtc HOSTLD scripts/genksyms/genksyms HOSTLD scripts/mod/modpost :1317:2: warning: #warning syscall pkey_mprotect not implemented [-Wcpp] :1320:2: warning: #warning syscall pkey_alloc not implemented [-Wcpp] :1323:2: warning: #warning syscall pkey_free not implemented [-Wcpp] :1326:2: warning: #warning syscall statx not implemented [-Wcpp] CC init/main.o CHK include/generated/compile.h CC init/do_mounts.o CC init/do_mounts_initrd.o CC init/initramfs.o CC init/calibrate.o CC init/init_task.o HOSTCC usr/gen_init_cpio UPD include/generated/compile.h CC init/version.o AS arch/sh/kernel/debugtraps.o CC arch/sh/mm/alignment.o CC arch/sh/kernel/dma-nommu.o CC arch/sh/kernel/dumpstack.o CC arch/sh/mm/cache.o CC arch/sh/mm/init.o CC arch/sh/mm/consistent.o CC arch/sh/mm/mmap.o CC arch/sh/kernel/irq_32.o CC arch/sh/kernel/io.o CC arch/sh/kernel/irq.o CC arch/sh/kernel/idle.o CC arch/sh/mm/extable_32.o CC arch/sh/mm/cache-sh2.o CC arch/sh/kernel/process_32.o CC arch/sh/kernel/machvec.o CC arch/sh/kernel/kdebugfs.o CC arch/sh/kernel/process.o CC arch/sh/boards/of-generic.o CC arch/sh/mm/nommu.o CC arch/sh/mm/asids-debugfs.o CC arch/sh/kernel/nmi_debug.o CC arch/sh/kernel/ptrace.o CC arch/sh/kernel/ptrace_32.o CC arch/sh/kernel/sys_sh.o CC arch/sh/kernel/return_address.o CC arch/sh/kernel/reboot.o CC arch/sh/kernel/time.o CC arch/sh/kernel/setup.o CC arch/sh/kernel/signal_32.o AS arch/sh/kernel/syscalls_32.o CC arch/sh/kernel/traps_32.o CC arch/sh/kernel/traps.o CC arch/sh/kernel/iomap.o CC arch/sh/kernel/topology.o CC arch/sh/kernel/sh_bios.o CC arch/sh/kernel/sys_sh32.o CC arch/sh/kernel/unwinder.o CC arch/sh/kernel/kgdb.o CC arch/sh/kernel/sh_ksyms_32.o CC arch/sh/math-emu/math.o GEN usr/initramfs_data.cpio.gz AS usr/initramfs_data.o AS arch/sh/kernel/cpu/sh2/ex.o CC arch/sh/kernel/cpu/irq/imask.o CC arch/sh/kernel/cpu/sh2/probe.o LD usr/built-in.o CC arch/sh/kernel/module.o AS arch/sh/kernel/cpu/sh2/entry.o /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S: Assembler messages: /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:89: Warning: overflow in branch to __restore_all; converted into longer instruction sequence /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:208: Warning: overflow in branch to syscall_call; converted into longer instruction sequence /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:356: Warning: CC arch/sh/kernel/cpu/sh2/setup-sh7619.o overflow in branch to syscall_trace_entry; converted into longer instruction sequence /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:358: Warning: overflow in branch to syscall_trace_entry; converted into longer instruction sequence /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:389: Warning: overflow in branch to syscall_exit_work; converted into longer instruction sequence /home/kisskb/slave/src/arch/sh/kernel/cpu/sh2/../../entry-common.S:392: Warning: overflow in branch to syscall_exit_work; converted into longer instruction sequence CC arch/sh/kernel/crash_dump.o CC arch/sh/kernel/stacktrace.o CC arch/sh/kernel/cpu/sh2/clock-sh7619.o CC arch/sh/kernel/cpu/clock-cpg.o CC arch/sh/kernel/cpu/init.o CC arch/sh/kernel/kprobes.o In file included from /home/kisskb/slave/src/arch/sh/math-emu/math.c:23:0: /home/kisskb/slave/src/include/math-emu/single.h:50:21: warning: "__BIG_ENDIAN" is not defined [-Wundef] In file included from /home/kisskb/slave/src/arch/sh/math-emu/math.c:24:0: /home/kisskb/slave/src/include/math-emu/double.h:59:21: warning: "__BIG_ENDIAN" is not defined [-Wundef] /home/kisskb/slave/src/arch/sh/math-emu/math.c:54:0: warning: "WRITE" redefined [enabled by default] /home/kisskb/slave/src/include/linux/kernel.h:57:0: note: this is the location of the previous definition /home/kisskb/slave/src/arch/sh/math-emu/math.c:55:0: warning: "READ" redefined [enabled by default] /home/kisskb/slave/src/include/linux/kernel.h:56:0: note: this is the location of the previous definition /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fcmp_gt': /home/kisskb/slave/src/arch/sh/math-emu/math.c:81:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:81:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fcmp_eq': /home/kisskb/slave/src/arch/sh/math-emu/math.c:92:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:92:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fadd': /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:108:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fsub': /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:115:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fmul': /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:122:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fdiv': /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:129:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fmac': /home/kisskb/slave/src/arch/sh/math-emu/math.c:145:2: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:145:2: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:147:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:147:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:147:1: warning: statement with no effect [-Wunused-value] make[2]: *** No rule to make target 'arch/sh/boot/dts/.dtb.o', needed by 'arch/sh/boot/dts/built-in.o'. Stop. /home/kisskb/slave/src/Makefile:1016: recipe for target 'arch/sh/boot/dts' failed make[1]: *** [arch/sh/boot/dts] Error 2 make[1]: *** Waiting for unfinished jobs.... CC arch/sh/kernel/ftrace.o /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'ffloat': /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:3: warning: right shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:3: warning: right shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:3: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:3: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:294:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:296:3: warning: right shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:296:3: warning: right shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:296:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:296:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:296:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'ftrc': /home/kisskb/slave/src/arch/sh/math-emu/math.c:310:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:310:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:310:1: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:310:1: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:310:1: warning: left shift count >= width of type [enabled by default] CC arch/sh/kernel/cpu/clock.o /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fcnvsd': /home/kisskb/slave/src/arch/sh/math-emu/math.c:323:2: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:324:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:324:2: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:324:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:324:2: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:324:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c: In function 'fcnvds': /home/kisskb/slave/src/arch/sh/math-emu/math.c:333:1: warning: left shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:334:2: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:334:2: warning: left shift count >= width of type [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:334:2: warning: right shift count is negative [enabled by default] /home/kisskb/slave/src/arch/sh/math-emu/math.c:335:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:335:1: warning: statement with no effect [-Wunused-value] /home/kisskb/slave/src/arch/sh/math-emu/math.c:335:1: warning: statement with no effect [-Wunused-value] CC arch/sh/kernel/disassemble.o /home/kisskb/slave/src/arch/sh/math-emu/math.c: At top level: /home/kisskb/slave/src/arch/sh/math-emu/math.c:505:12: warning: 'ieee_fpe_handler' defined but not used [-Wunused-function] CC arch/sh/kernel/dwarf.o CC arch/sh/kernel/cpu/fpu.o CC arch/sh/kernel/perf_event.o LD arch/sh/boards/built-in.o CC arch/sh/kernel/cpu/pfc.o CC arch/sh/kernel/cpu/proc.o CC arch/sh/kernel/perf_callchain.o CC arch/sh/kernel/hw_breakpoint.o AS arch/sh/kernel/head_32.o LDS arch/sh/kernel/vmlinux.lds LD arch/sh/kernel/cpu/irq/built-in.o /home/kisskb/slave/src/arch/sh/kernel/cpu/clock-cpg.c: In function 'cpg_clk_init': /home/kisskb/slave/src/arch/sh/kernel/cpu/clock-cpg.c:52:3: warning: 'arch_init_clk_ops' is deprecated (declared at /home/kisskb/slave/src/arch/sh/include/asm/clock.h:7) [-Wdeprecated-declarations] /home/kisskb/slave/src/arch/sh/kernel/cpu/clock-cpg.c: In function 'arch_clk_init': /home/kisskb/slave/src/arch/sh/kernel/cpu/clock-cpg.c:76:2: warning: 'cpg_clk_init' is deprecated (declared at /home/kisskb/slave/src/arch/sh/kernel/cpu/clock-cpg.c:46) [-Wdeprecated-declarations] LD arch/sh/mm/built-in.o /home/kisskb/slave/src/arch/sh/kernel/cpu/clock.c: In function 'clk_init': /home/kisskb/slave/src/arch/sh/kernel/cpu/clock.c:25:6: warning: 'ret' may be used uninitialized in this function [-Wuninitialized] LD arch/sh/kernel/cpu/sh2/built-in.o LD arch/sh/kernel/cpu/built-in.o LD init/mounts.o LD init/built-in.o LD arch/sh/kernel/built-in.o LD arch/sh/math-emu/built-in.o make[1]: Leaving directory '/home/kisskb/slave/build/linus_sh-allmodconfig_sh4' Makefile:152: recipe for target 'sub-make' failed make: *** [sub-make] Error 2 Command 'make -j 48 ARCH=sh O=/home/kisskb/slave/build/linus_sh-allmodconfig_sh4 CROSS_COMPILE=/opt/cross/kisskb/gcc-4.6.3-nolibc/sh4-linux/bin/sh4-linux- ' returned non-zero exit status 2 # rm -rf /home/kisskb/slave/build/linus_sh-allmodconfig_sh4 # Build took: 0:00:09.965899