Merge tag 'powerpc-4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux
authorLinus Torvalds <torvalds@linux-foundation.org>
Thu, 16 Apr 2015 18:53:32 +0000 (13:53 -0500)
committerLinus Torvalds <torvalds@linux-foundation.org>
Thu, 16 Apr 2015 18:53:32 +0000 (13:53 -0500)
Pull powerpc updates from Michael Ellerman:

 - Numerous minor fixes, cleanups etc.

 - More EEH work from Gavin to remove its dependency on device_nodes.

 - Memory hotplug implemented entirely in the kernel from Nathan
   Fontenot.

 - Removal of redundant CONFIG_PPC_OF by Kevin Hao.

 - Rewrite of VPHN parsing logic & tests from Greg Kurz.

 - A fix from Nish Aravamudan to reduce memory usage by clamping
   nodes_possible_map.

 - Support for pstore on powernv from Hari Bathini.

 - Removal of old powerpc specific byte swap routines by David Gibson.

 - Fix from Vasant Hegde to prevent the flash driver telling you it was
   flashing your firmware when it wasn't.

 - Patch from Ben Herrenschmidt to add an OPAL heartbeat driver.

 - Fix for an oops causing get/put_cpu_var() imbalance in perf by Jan
   Stancek.

 - Some fixes for migration from Tyrel Datwyler.

 - A new syscall to switch the cpu endian by Michael Ellerman.

 - Large series from Wei Yang to implement SRIOV, reviewed and acked by
   Bjorn.

 - A fix for the OPAL sensor driver from Cédric Le Goater.

 - Fixes to get STRICT_MM_TYPECHECKS building again by Michael Ellerman.

 - Large series from Daniel Axtens to make our PCI hooks per PHB rather
   than per machine.

 - Small patch from Sam Bobroff to explicitly abort non-suspended
   transactions on syscalls, plus a test to exercise it.

 - Numerous reworks and fixes for the 24x7 PMU from Sukadev Bhattiprolu.

 - Small patch to enable the hard lockup detector from Anton Blanchard.

 - Fix from Dave Olson for missing L2 cache information on some CPUs.

 - Some fixes from Michael Ellerman to get Cell machines booting again.

 - Freescale updates from Scott: Highlights include BMan device tree
   nodes, an MSI erratum workaround, a couple minor performance
   improvements, config updates, and misc fixes/cleanup.

* tag 'powerpc-4.1-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mpe/linux: (196 commits)
  powerpc/powermac: Fix build error seen with powermac smp builds
  powerpc/pseries: Fix compile of memory hotplug without CONFIG_MEMORY_HOTREMOVE
  powerpc: Remove PPC32 code from pseries specific find_and_init_phbs()
  powerpc/cell: Fix iommu breakage caused by controller_ops change
  powerpc/eeh: Fix crash in eeh_add_device_early() on Cell
  powerpc/perf: Cap 64bit userspace backtraces to PERF_MAX_STACK_DEPTH
  powerpc/perf/hv-24x7: Fail 24x7 initcall if create_events_from_catalog() fails
  powerpc/pseries: Correct memory hotplug locking
  powerpc: Fix missing L2 cache size in /sys/devices/system/cpu
  powerpc: Add ppc64 hard lockup detector support
  oprofile: Disable oprofile NMI timer on ppc64
  powerpc/perf/hv-24x7: Add missing put_cpu_var()
  powerpc/perf/hv-24x7: Break up single_24x7_request
  powerpc/perf/hv-24x7: Define update_event_count()
  powerpc/perf/hv-24x7: Whitespace cleanup
  powerpc/perf/hv-24x7: Define add_event_to_24x7_request()
  powerpc/perf/hv-24x7: Rename hv_24x7_event_update
  powerpc/perf/hv-24x7: Move debug prints to separate function
  powerpc/perf/hv-24x7: Drop event_24x7_request()
  powerpc/perf/hv-24x7: Use pr_devel() to log message
  ...

Conflicts:
tools/testing/selftests/powerpc/Makefile
tools/testing/selftests/powerpc/tm/Makefile

21 files changed:
1  2 
arch/Kconfig
arch/powerpc/Kconfig
arch/powerpc/kernel/cputable.c
arch/powerpc/kernel/setup_64.c
arch/powerpc/kvm/powerpc.c
arch/powerpc/perf/core-book3s.c
arch/powerpc/perf/hv-24x7.c
arch/powerpc/platforms/powernv/opal-wrappers.S
arch/powerpc/platforms/powernv/smp.c
arch/powerpc/platforms/pseries/mobility.c
drivers/ata/sata_svw.c
drivers/net/ethernet/apple/bmac.c
drivers/net/ethernet/apple/mace.c
drivers/net/ethernet/ibm/emac/core.c
drivers/net/ethernet/sfc/efx.c
drivers/pci/pci.h
drivers/pci/setup-bus.c
include/linux/pci.h
tools/testing/selftests/powerpc/Makefile
tools/testing/selftests/powerpc/copyloops/Makefile
tools/testing/selftests/powerpc/tm/Makefile

diff --cc arch/Kconfig
Simple merge
Simple merge
Simple merge
index 49f553bbb3603046e7b7fc4c832a7a9cd56a04fc,7551e5692597c979a5c3e1fee260d8b36ba34fe8..c69671c03c3b5b7dc9b3e1f70726abba12c5c4b1
@@@ -779,3 -780,22 +780,22 @@@ unsigned long memory_block_size_bytes(v
  struct ppc_pci_io ppc_pci_io;
  EXPORT_SYMBOL(ppc_pci_io);
  #endif
 -      watchdog_enable_hardlockup_detector(false);
+ #ifdef CONFIG_HARDLOCKUP_DETECTOR
+ u64 hw_nmi_get_sample_period(int watchdog_thresh)
+ {
+       return ppc_proc_freq * watchdog_thresh;
+ }
+ /*
+  * The hardlockup detector breaks PMU event based branches and is likely
+  * to get false positives in KVM guests, so disable it by default.
+  */
+ static int __init disable_hardlockup_detector(void)
+ {
++      hardlockup_detector_disable();
+       return 0;
+ }
+ early_initcall(disable_hardlockup_detector);
+ #endif
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
index 2958fe9a74e97b2c86ce1c8e6072f49291cca257,a5d5be7ec4c7f6cc1da05727d5e8488b7da887e6..5ad042345ab9b66ea2e884824ba407897cb56833
@@@ -8,41 -8,27 +8,41 @@@ ifeq ($(ARCH),powerpc
  
  GIT_VERSION = $(shell git describe --always --long --dirty || echo "unknown")
  
 -CC := $(CROSS_COMPILE)$(CC)
  CFLAGS := -Wall -O2 -flto -Wall -Werror -DGIT_VERSION='"$(GIT_VERSION)"' -I$(CURDIR) $(CFLAGS)
  
 -export CC CFLAGS
 +export CFLAGS
  
- TARGETS = pmu copyloops mm tm primitives stringloops
+ SUB_DIRS = pmu copyloops mm tm primitives stringloops vphn switch_endian
  
  endif
  
- all: $(TARGETS)
+ all: $(SUB_DIRS)
  
- $(TARGETS):
+ $(SUB_DIRS):
        $(MAKE) -k -C $@ all
  
 -run_tests: all
 +include ../lib.mk
 +
 +override define RUN_TESTS
-       @for TARGET in $(TARGETS); do \
+       @for TARGET in $(SUB_DIRS); do \
                $(MAKE) -C $$TARGET run_tests; \
        done;
-       @for TARGET in $(TARGETS); do \
 +endef
 +
 +override define INSTALL_RULE
-       @for TARGET in $(TARGETS); do \
++      @for TARGET in $(SUB_DIRS); do \
 +              $(MAKE) -C $$TARGET install; \
 +      done;
 +endef
 +
 +override define EMIT_TESTS
++      @for TARGET in $(SUB_DIRS); do \
 +              $(MAKE) -s -C $$TARGET emit_tests; \
 +      done;
 +endef
  
  clean:
-       @for TARGET in $(TARGETS); do \
+       @for TARGET in $(SUB_DIRS); do \
                $(MAKE) -C $$TARGET clean; \
        done;
        rm -f tags
@@@ -50,4 -36,4 +50,4 @@@
  tags:
        find . -name '*.c' -o -name '*.h' | xargs ctags
  
- .PHONY: tags $(TARGETS)
 -.PHONY: all run_tests clean tags $(SUB_DIRS)
++.PHONY: tags $(SUB_DIRS)
index 34f2ec634b40ac2c8c3a1d2fac06c0257c8e7181,122cf1830de8ed63c5eb5decdbd20b6ea8138608..1b616fa79e93947987fa0093e8f73d1428205fd2
@@@ -1,10 -1,18 +1,13 @@@
- TEST_PROGS := tm-resched-dscr
 -PROGS := tm-resched-dscr tm-syscall
++TEST_PROGS := tm-resched-dscr tm-syscall
  
 -all: $(PROGS)
 +all: $(TEST_PROGS)
  
 -$(PROGS): ../harness.c
 +$(TEST_PROGS): ../harness.c
  
 -run_tests: all
 -      @-for PROG in $(PROGS); do \
 -              ./$$PROG; \
 -      done;
+ tm-syscall: tm-syscall-asm.S
+ tm-syscall: CFLAGS += -mhtm
 +include ../../lib.mk
  
  clean:
 -      rm -f $(PROGS) *.o
 -
 -.PHONY: all run_tests clean
 +      rm -f $(TEST_PROGS) *.o