# git rev-parse -q --verify 68fc378ce332cc4efd7f314d3e6e15e83f53ebf2^{commit} 68fc378ce332cc4efd7f314d3e6e15e83f53ebf2 already have revision, skipping fetch # git checkout -q -f -B kisskb 68fc378ce332cc4efd7f314d3e6e15e83f53ebf2 # git clean -qxdf # git log -1 commit 68fc378ce332cc4efd7f314d3e6e15e83f53ebf2 Author: Michael Ellerman Date: Thu Apr 30 15:13:14 2015 +1000 Revert "powerpc/tm: Abort syscalls in active transactions" This reverts commit feba40362b11341bee6d8ed58d54b896abbd9f84. Although the principle of this change is good, the implementation has a few issues. Firstly we can sometimes fail to abort a syscall because r12 may have been clobbered by C code if we went down the virtual CPU accounting path, or if syscall tracing was enabled. Secondly we have decided that it is safer to abort the syscall even earlier in the syscall entry path, so that we avoid the syscall tracing path when we are transactional. So that we have time to thoroughly test those changes we have decided to revert this for this merge window and will merge the fixed version in the next window. NB. Rather than reverting the selftest we just drop tm-syscall from TEST_PROGS so that it's not run by default. Fixes: feba40362b11 ("powerpc/tm: Abort syscalls in active transactions") Signed-off-by: Michael Ellerman # < /opt/cross/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-gcc --version # < git log --format=%s --max-count=1 68fc378ce332cc4efd7f314d3e6e15e83f53ebf2 # < make -j 240 ARCH=powerpc O=/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- allnoconfig # make -j 240 ARCH=powerpc O=/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc CROSS_COMPILE=/opt/cross/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux- make[1]: Entering directory `/home/kisskb/slave/src' make[2]: Entering directory `/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc' GEN ./Makefile scripts/kconfig/conf --silentoldconfig Kconfig make[2]: Leaving directory `/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc' make[2]: Entering directory `/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc' CHK include/config/kernel.release GEN ./Makefile WRAP arch/powerpc/include/generated/asm/clkdev.h WRAP arch/powerpc/include/generated/asm/div64.h WRAP arch/powerpc/include/generated/asm/irq_regs.h WRAP arch/powerpc/include/generated/asm/irq_work.h WRAP arch/powerpc/include/generated/asm/local64.h WRAP arch/powerpc/include/generated/asm/mcs_spinlock.h WRAP arch/powerpc/include/generated/asm/preempt.h WRAP arch/powerpc/include/generated/asm/rwsem.h CHK include/generated/uapi/linux/version.h WRAP arch/powerpc/include/generated/asm/scatterlist.h WRAP arch/powerpc/include/generated/asm/trace_clock.h WRAP arch/powerpc/include/generated/asm/vtime.h UPD include/generated/uapi/linux/version.h UPD include/config/kernel.release Using /home/kisskb/slave/src as source for kernel CHK include/generated/utsrelease.h UPD include/generated/utsrelease.h HOSTCC scripts/dtc/dtc.o HOSTCC scripts/dtc/flattree.o HOSTCC scripts/dtc/fstree.o HOSTCC scripts/dtc/data.o CC scripts/mod/empty.o HOSTCC scripts/mod/mk_elfconfig HOSTCC scripts/dtc/livetree.o HOSTCC scripts/dtc/treesource.o HOSTCC scripts/dtc/srcpos.o HOSTCC scripts/dtc/checks.o HOSTCC scripts/dtc/util.o SHIPPED scripts/dtc/dtc-lexer.lex.c SHIPPED scripts/dtc/dtc-parser.tab.h CC scripts/mod/devicetable-offsets.s SHIPPED scripts/dtc/dtc-parser.tab.c CC kernel/bounds.s HOSTCC scripts/dtc/dtc-lexer.lex.o HOSTCC scripts/dtc/dtc-parser.tab.o CHK include/generated/bounds.h GEN scripts/mod/devicetable-offsets.h UPD include/generated/bounds.h CC arch/powerpc/kernel/asm-offsets.s MKELF scripts/mod/elfconfig.h HOSTCC scripts/mod/modpost.o HOSTCC scripts/mod/file2alias.o HOSTCC scripts/mod/sumversion.o 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/mod/modpost CC init/main.o CHK include/generated/compile.h CC init/init_task.o CC init/noinitramfs.o LD usr/built-in.o CC init/do_mounts.o CC arch/powerpc/mm/fault.o CC arch/powerpc/mm/mem.o CC arch/powerpc/mm/pgtable.o CC arch/powerpc/mm/mmap.o CC arch/powerpc/mm/init_32.o UPD include/generated/compile.h AS arch/powerpc/lib/string.o CC arch/powerpc/mm/pgtable_32.o LD arch/powerpc/sysdev/built-in.o CC arch/powerpc/mm/ppc_mmu_32.o AS arch/powerpc/mm/hash_low_32.o CC arch/powerpc/lib/alloc.o CC arch/powerpc/mm/tlb_hash32.o AS arch/powerpc/lib/crtsavres.o CC arch/powerpc/mm/mmu_context_hash32.o CC init/version.o LD arch/powerpc/platforms/built-in.o CC arch/powerpc/lib/ppc_ksyms.o CC arch/powerpc/kernel/cputable.o CC arch/powerpc/mm/hugetlbpage.o CC arch/powerpc/kernel/ptrace.o CC arch/powerpc/lib/code-patching.o CC arch/powerpc/kernel/syscalls.o CC arch/powerpc/lib/feature-fixups.o AS arch/powerpc/lib/div64.o CC arch/powerpc/kernel/irq.o AS arch/powerpc/lib/copy_32.o LD arch/powerpc/math-emu/built-in.o CC arch/powerpc/kernel/align.o AS arch/powerpc/lib/checksum_32.o CC arch/powerpc/kernel/signal_32.o CC arch/powerpc/kernel/pmc.o LD arch/powerpc/crypto/built-in.o CC arch/powerpc/kernel/vdso.o CC arch/powerpc/kernel/process.o LD arch/powerpc/net/built-in.o CPP arch/powerpc/kernel/systbl_chk.i CC arch/powerpc/kernel/idle.o CC arch/powerpc/kernel/signal.o CC arch/powerpc/kernel/sysfs.o CC arch/powerpc/kernel/cacheinfo.o CC arch/powerpc/kernel/time.o CC arch/powerpc/kernel/prom.o LD ipc/built-in.o CC arch/powerpc/kernel/traps.o CC arch/powerpc/kernel/setup-common.o CC arch/powerpc/kernel/udbg.o AS arch/powerpc/kernel/misc.o CC security/commoncap.o CC arch/powerpc/kernel/io.o LD crypto/built-in.o CC security/min_addr.o CC arch/powerpc/kernel/dma.o AS arch/powerpc/kernel/misc_32.o LD block/built-in.o CC arch/powerpc/kernel/of_platform.o CC arch/powerpc/kernel/prom_parse.o AS arch/powerpc/kernel/idle_6xx.o AS arch/powerpc/kernel/l2cr_6xx.o CC mm/filemap.o AS arch/powerpc/kernel/cpu_setup_6xx.o LD sound/built-in.o CC mm/mempool.o AS arch/powerpc/kernel/entry_32.o CC mm/oom_kill.o CC arch/powerpc/kernel/setup_32.o CC arch/powerpc/kernel/pci_32.o CC mm/maccess.o CC arch/powerpc/kernel/pci-common.o CC arch/powerpc/kernel/pci_of_scan.o LD firmware/built-in.o LD net/built-in.o CC fs/open.o CC arch/powerpc/kernel/iomap.o CC kernel/fork.o CC mm/page_alloc.o CC fs/read_write.o AS arch/powerpc/kernel/head_32.o LDS arch/powerpc/kernel/vmlinux.lds CC kernel/exec_domain.o AS arch/powerpc/kernel/fpu.o CC fs/file_table.o CC mm/page-writeback.o CC kernel/panic.o CC fs/super.o CC kernel/cpu.o CC mm/readahead.o CC fs/char_dev.o CC kernel/exit.o CC mm/swap.o CC fs/stat.o CC kernel/softirq.o CC mm/truncate.o CC fs/exec.o CALL /home/kisskb/slave/src/arch/powerpc/kernel/systbl_chk.sh CC mm/vmscan.o CC kernel/resource.o CC kernel/sysctl.o CC mm/shmem.o CC fs/pipe.o CC kernel/sysctl_binary.o CC mm/util.o CC fs/namei.o CC mm/mmzone.o CC mm/vmstat.o AS arch/powerpc/kernel/systbl.o CC kernel/capability.o CC fs/fcntl.o LDS arch/powerpc/kernel/vdso32/vdso32.lds CC mm/backing-dev.o VDSO32A arch/powerpc/kernel/vdso32/sigtramp.o CC kernel/ptrace.o CC mm/mm_init.o VDSO32A arch/powerpc/kernel/vdso32/gettimeofday.o CC fs/ioctl.o CC mm/mmu_context.o CC kernel/user.o VDSO32A arch/powerpc/kernel/vdso32/datapage.o VDSO32A arch/powerpc/kernel/vdso32/cacheflush.o CC mm/percpu.o CC fs/readdir.o VDSO32A arch/powerpc/kernel/vdso32/note.o CC lib/lockref.o CC kernel/signal.o CC mm/slab_common.o CC fs/select.o CC lib/bcd.o CC kernel/sys.o CC mm/compaction.o CC fs/dcache.o CC lib/div64.o CC kernel/kmod.o CC mm/vmacache.o CC fs/inode.o CC kernel/workqueue.o CC lib/sort.o CC mm/interval_tree.o CC fs/attr.o CC kernel/pid.o CC lib/parser.o CC kernel/task_work.o CC mm/list_lru.o CC fs/bad_inode.o CC mm/workingset.o CC fs/file.o CC lib/halfmd4.o CC kernel/extable.o CC kernel/params.o CC mm/debug.o CC fs/filesystems.o CC lib/debug_locks.o CC mm/gup.o CC kernel/kthread.o CC lib/random32.o CC fs/namespace.o CC mm/highmem.o CC kernel/sys_ni.o CC fs/seq_file.o CC lib/bust_spinlocks.o CC fs/xattr.o CC mm/memory.o CC lib/kasprintf.o CC kernel/nsproxy.o CC lib/bitmap.o CC kernel/notifier.o VDSO32L arch/powerpc/kernel/vdso32/vdso32.so.dbg CC fs/fs-writeback.o CC lib/scatterlist.o CC mm/mlock.o CC mm/mincore.o CC kernel/ksysfs.o CC fs/splice.o CC kernel/cred.o CC fs/libfs.o CC lib/gcd.o LD drivers/amba/built-in.o CC fs/utimes.o CC fs/sync.o CC mm/mprotect.o CC mm/mmap.o CC fs/pnode.o CC kernel/reboot.o LD drivers/auxdisplay/built-in.o CC lib/list_sort.o CC lib/lcm.o CC lib/uuid.o CC mm/msync.o CC kernel/range.o CC kernel/smpboot.o CC lib/flex_array.o LD drivers/bus/built-in.o CC mm/rmap.o CC lib/iov_iter.o CC fs/fs_struct.o CC fs/stack.o CC fs/statfs.o LD drivers/firewire/built-in.o CC mm/mremap.o CC lib/bsearch.o LD drivers/clk/built-in.o OBJCOPY arch/powerpc/kernel/vdso32/vdso32.so CC lib/find_bit.o CC lib/clz_ctz.o LD drivers/block/built-in.o CC lib/llist.o LD drivers/cdrom/built-in.o CC mm/pagewalk.o LD drivers/gpio/built-in.o CC mm/pgtable-generic.o CC fs/nsfs.o CC mm/init-mm.o LD kernel/livepatch/built-in.o CC lib/kfifo.o CC lib/memweight.o CC kernel/async.o CC lib/percpu-refcount.o CC mm/vmalloc.o AS arch/powerpc/kernel/vdso32/vdso32_wrapper.o CC mm/memblock.o CC kernel/dma.o CC lib/percpu_ida.o LD fs/exofs/built-in.o CC kernel/up.o CC fs/fs_pin.o LD drivers/clocksource/built-in.o CC mm/dmapool.o CC lib/rhashtable.o CC mm/slub.o CC fs/binfmt_elf.o CC kernel/elfcore.o CC lib/reciprocal_div.o CC kernel/printk/printk.o LD drivers/macintosh/built-in.o LD drivers/mfd/built-in.o LD fs/quota/built-in.o CC drivers/char/random.o CC lib/string_helpers.o LD drivers/leds/built-in.o CC fs/no-block.o CC lib/kstrtox.o CC drivers/char/misc.o CC drivers/irqchip/irqchip.o CC kernel/rcu/update.o CC kernel/power/qos.o LD fs/devpts/built-in.o LD drivers/idle/built-in.o CC lib/iomap_copy.o LD drivers/hsi/controllers/built-in.o CC lib/devres.o CC drivers/char/mem.o CC kernel/rcu/tiny.o LD drivers/net/built-in.o CC lib/hweight.o CC lib/bitrev.o CC lib/pci_iomap.o HOSTCC lib/gen_crc32table LD arch/powerpc/lib/built-in.o CC lib/hexdump.o CC mm/nobootmem.o LD drivers/hsi/clients/built-in.o CC lib/syscall.o CC lib/atomic64.o CC lib/strncpy_from_user.o LD drivers/nfc/built-in.o LD drivers/lguest/built-in.o CC lib/argv_split.o LD drivers/gpu/vga/built-in.o CC kernel/locking/mutex.o CC lib/cmdline.o LD drivers/firmware/built-in.o LD drivers/char/agp/built-in.o CC lib/ctype.o CC kernel/sched/proc.o CC kernel/locking/semaphore.o CC kernel/sched/clock.o CC lib/dec_and_lock.o CC kernel/sched/cputime.o CC kernel/locking/rwsem-xadd.o CC kernel/sched/idle_task.o CC lib/dump_stack.o CC lib/decompress.o LD drivers/platform/built-in.o CC kernel/sched/fair.o LD drivers/i2c/busses/built-in.o CC lib/extable.o CC kernel/sched/rt.o LD drivers/pwm/built-in.o CC kernel/sched/deadline.o CC lib/fdt_empty_tree.o LD drivers/soc/built-in.o CC kernel/sched/stop_task.o CC lib/fdt_ro.o LD drivers/i2c/muxes/built-in.o CC kernel/sched/completion.o CC lib/fdt_rw.o CC lib/fdt_strerror.o CC kernel/sched/wait.o CC kernel/sched/idle.o CC fs/ramfs/file-mmu.o LD drivers/irqchip/built-in.o CC lib/fdt_sw.o LD drivers/pinctrl/freescale/built-in.o CC lib/fdt_wip.o LD drivers/pinctrl/nomadik/built-in.o CC kernel/sched/core.o CC kernel/locking/rwsem.o LD drivers/tty/ipwireless/built-in.o CC lib/strnlen_user.o CC lib/int_sqrt.o CC lib/ioremap.o CC lib/flex_proportions.o LD drivers/tty/serial/built-in.o CC lib/earlycpio.o CC lib/irq_regs.o CC lib/is_single_threaded.o CC lib/klist.o LD fs/notify/dnotify/built-in.o CC lib/kobject_uevent.o CC kernel/irq/irqdesc.o LD fs/notify/inotify/built-in.o CC kernel/irq/handle.o CC kernel/irq/manage.o CC fs/ramfs/inode.o CC lib/plist.o CC kernel/irq/spurious.o LD drivers/misc/carma/built-in.o CC lib/proportions.o CC lib/radix-tree.o CC lib/md5.o CC kernel/irq/resend.o CC kernel/irq/chip.o CC lib/ratelimit.o LD drivers/misc/cb710/built-in.o LD drivers/misc/ti-st/built-in.o CC lib/rbtree.o CC kernel/irq/dummychip.o CC drivers/usb/host/pci-quirks.o CC lib/idr.o CC lib/sha1.o LD drivers/mmc/built-in.o CC kernel/irq/devres.o CC drivers/pci/bus.o CC lib/show_mem.o CC kernel/irq/irqdomain.o CC drivers/base/component.o LD drivers/gpu/drm/panel/built-in.o LD drivers/gpu/drm/bridge/built-in.o LD drivers/gpu/drm/i2c/built-in.o CC drivers/pci/probe.o CC lib/string.o CC drivers/pci/host-bridge.o LD drivers/pinctrl/built-in.o CC drivers/pci/remove.o CC drivers/base/core.o LD drivers/tty/vt/built-in.o CC lib/timerqueue.o CC drivers/base/bus.o CC drivers/pci/pci.o CC lib/vsprintf.o CC drivers/pci/pci-driver.o CC drivers/base/syscore.o CC drivers/pci/search.o CC drivers/base/driver.o LD drivers/misc/mic/built-in.o CC drivers/pci/pci-sysfs.o CC drivers/base/class.o LD fs/notify/fanotify/built-in.o CC drivers/pci/rom.o CC drivers/pci/setup-res.o CC drivers/base/platform.o CC lib/kobject.o CC lib/fdt.o CC drivers/pci/irq.o LD init/mounts.o LD drivers/hsi/built-in.o CC drivers/base/firmware.o CC drivers/pci/setup-bus.o CC drivers/base/init.o CC drivers/pci/vc.o CC drivers/base/dd.o CC drivers/pci/vpd.o CC drivers/base/map.o CC drivers/pci/of.o CC kernel/time/timer.o CC kernel/time/hrtimer.o CC drivers/base/transport_class.o CC drivers/base/topology.o LD drivers/i2c/algos/built-in.o CC kernel/time/itimer.o CC drivers/of/base.o CC drivers/base/container.o CC drivers/of/device.o CC drivers/base/property.o CC kernel/time/posix-timers.o CC drivers/of/platform.o CC kernel/time/posix-cpu-timers.o CC kernel/time/timekeeping.o CC drivers/of/fdt.o CC kernel/time/ntp.o CC drivers/base/cacheinfo.o CC drivers/of/fdt_address.o CC drivers/pci/syscall.o CC kernel/time/clocksource.o LD drivers/pci/host/built-in.o CC drivers/base/attribute_container.o CC drivers/of/address.o CC drivers/of/irq.o CC drivers/base/dma-mapping.o CC kernel/time/jiffies.o CC kernel/time/timer_list.o CC drivers/of/of_pci.o CC drivers/of/of_pci_irq.o LD arch/powerpc/mm/built-in.o CC kernel/time/timeconv.o CC kernel/time/timecounter.o CC drivers/of/of_reserved_mem.o CC kernel/time/posix-clock.o CC kernel/time/alarmtimer.o LD drivers/misc/lis3lv02d/built-in.o CC kernel/time/clockevents.o CC kernel/time/tick-common.o CC drivers/pci/access.o LD init/built-in.o LD drivers/misc/eeprom/built-in.o GEN lib/crc32table.h LD kernel/rcu/built-in.o LD drivers/video/backlight/built-in.o CC lib/seq_buf.o CC lib/crc32.o LD drivers/misc/built-in.o LD fs/notify/built-in.o LD kernel/printk/built-in.o LD drivers/tty/built-in.o LD drivers/gpu/drm/built-in.o HZFILE kernel/time/hz.bc BC kernel/time/timeconst.h LD drivers/i2c/built-in.o CC kernel/time/time.o LD drivers/gpu/built-in.o LD kernel/power/built-in.o LD kernel/locking/built-in.o CC drivers/base/devres.o LD security/built-in.o CC drivers/video/fbdev/core/fb_notify.o CC drivers/base/cpu.o LD drivers/video/fbdev/omap2/displays-new/built-in.o LD drivers/base/power/built-in.o LD arch/powerpc/kernel/vdso32/built-in.o LD drivers/video/fbdev/omap2/dss/built-in.o LD drivers/video/fbdev/omap2/built-in.o LD drivers/media/firewire/built-in.o LD drivers/media/common/b2c2/built-in.o LD drivers/media/tuners/built-in.o LD drivers/media/common/saa7146/built-in.o LD drivers/media/common/siano/built-in.o LD drivers/media/platform/omap/built-in.o LD drivers/media/mmc/siano/built-in.o LD drivers/media/i2c/soc_camera/built-in.o LD drivers/media/common/built-in.o LD drivers/media/platform/built-in.o LD drivers/media/mmc/built-in.o LD drivers/media/rc/keymaps/built-in.o LD drivers/media/rc/built-in.o LD drivers/media/i2c/built-in.o LD arch/powerpc/kernel/built-in.o LD fs/ramfs/ramfs.o LD drivers/media/usb/b2c2/built-in.o LD drivers/media/usb/dvb-usb-v2/built-in.o LD drivers/media/usb/s2255/built-in.o LD drivers/media/usb/siano/built-in.o LD drivers/media/usb/dvb-usb/built-in.o LD fs/ramfs/built-in.o LD drivers/media/usb/stkwebcam/built-in.o LD drivers/media/usb/ttusb-dec/built-in.o LD drivers/media/usb/ttusb-budget/built-in.o LD drivers/media/usb/zr364xx/built-in.o LD drivers/media/pci/ddbridge/built-in.o LD drivers/media/pci/b2c2/built-in.o LD drivers/media/pci/dm1105/built-in.o LD drivers/media/pci/mantis/built-in.o LD drivers/media/pci/pt1/built-in.o LD drivers/media/pci/ngene/built-in.o LD drivers/media/pci/pluto2/built-in.o LD drivers/media/pci/ttpci/built-in.o LD drivers/media/usb/built-in.o LD drivers/media/pci/pt3/built-in.o LD drivers/media/pci/saa7146/built-in.o LD drivers/media/pci/smipcie/built-in.o LD drivers/media/pci/built-in.o LD drivers/media/built-in.o LD drivers/char/built-in.o LD drivers/video/fbdev/core/built-in.o LD drivers/video/fbdev/built-in.o LD drivers/video/built-in.o LD drivers/usb/host/built-in.o LD drivers/usb/built-in.o LD kernel/irq/built-in.o LD lib/built-in.o LD drivers/of/built-in.o LD drivers/base/built-in.o LD kernel/time/built-in.o LD kernel/sched/built-in.o LD kernel/built-in.o LD mm/built-in.o LD fs/built-in.o LD drivers/pci/built-in.o LD drivers/built-in.o AR lib/lib.a LINK vmlinux LD vmlinux.o MODPOST vmlinux.o GEN .version CHK include/generated/compile.h UPD include/generated/compile.h CC init/version.o LD init/built-in.o LD vmlinux SYSMAP System.map /opt/cross/gcc-4.6.3-nolibc/powerpc-linux/bin/powerpc-linux-strip -s -R .comment vmlinux -o arch/powerpc/boot/vmlinux.strip make[2]: Leaving directory `/home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc' make[1]: Leaving directory `/home/kisskb/slave/src' Completed OK # rm -rf /home/kisskb/slave/build/powerpc_powerpc-allnoconfig_powerpc # Build took: 0:00:12.314997