Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livep...
authorLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Apr 2015 17:15:34 +0000 (10:15 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 Apr 2015 17:15:34 +0000 (10:15 -0700)
Pull livepatching updates from Jiri Kosina:
 "These are mostly smaller things that got accumulated during the
  development cycle.  The unified solution is still being worked on and
  is not mature enough for 4.1 yet.

   - s390 livepatching support, from Jiri Slaby (has Ack from s390
     maintainers)

   - error handling simplification, from Josh Poimboeuf

   - two minor code cleanups from Josh Poimboeuf and Miroslav Benes"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
  livepatch: add support on s390
  livepatch: remove unnecessary call to klp_find_object_module()
  livepatch: simplify disable error path
  livepatch: remove extern specifier from header files

1  2 
arch/s390/Kconfig

diff --combined arch/s390/Kconfig
@@@ -66,7 -66,6 +66,7 @@@ config S39
        select ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE
        select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
        select ARCH_HAS_GCOV_PROFILE_ALL
 +      select ARCH_HAS_SG_CHAIN
        select ARCH_HAVE_NMI_SAFE_CMPXCHG
        select ARCH_INLINE_READ_LOCK
        select ARCH_INLINE_READ_LOCK_BH
        select HAVE_BPF_JIT if 64BIT && PACK_STACK
        select HAVE_CMPXCHG_DOUBLE
        select HAVE_CMPXCHG_LOCAL
 -      select HAVE_C_RECORDMCOUNT
        select HAVE_DEBUG_KMEMLEAK
        select HAVE_DYNAMIC_FTRACE if 64BIT
        select HAVE_DYNAMIC_FTRACE_WITH_REGS if 64BIT
        select HAVE_KPROBES
        select HAVE_KRETPROBES
        select HAVE_KVM if 64BIT
+       select HAVE_LIVEPATCH
        select HAVE_MEMBLOCK
        select HAVE_MEMBLOCK_NODE_MAP
        select HAVE_MEMBLOCK_PHYS_MAP
        select TTY
        select VIRT_CPU_ACCOUNTING
        select VIRT_TO_BUS
 -      select ARCH_HAS_SG_CHAIN
  
  config SCHED_OMIT_FRAME_POINTER
        def_bool y
@@@ -159,6 -161,8 +160,8 @@@ source "init/Kconfig
  
  source "kernel/Kconfig.freezer"
  
+ source "kernel/livepatch/Kconfig"
  menu "Processor type and features"
  
  config HAVE_MARCH_Z900_FEATURES
@@@ -184,10 -188,6 +187,10 @@@ config HAVE_MARCH_ZEC12_FEATURE
        def_bool n
        select HAVE_MARCH_Z196_FEATURES
  
 +config HAVE_MARCH_Z13_FEATURES
 +      def_bool n
 +      select HAVE_MARCH_ZEC12_FEATURES
 +
  choice
        prompt "Processor type"
        default MARCH_G5
@@@ -247,14 -247,6 +250,14 @@@ config MARCH_ZEC1
          2827 series). The kernel will be slightly faster but will not work on
          older machines.
  
 +config MARCH_Z13
 +      bool "IBM z13"
 +      select HAVE_MARCH_Z13_FEATURES if 64BIT
 +      help
 +        Select this to enable optimizations for IBM z13 (2964 series).
 +        The kernel will be slightly faster but will not work on older
 +        machines.
 +
  endchoice
  
  config MARCH_G5_TUNE
@@@ -278,9 -270,6 +281,9 @@@ config MARCH_Z196_TUN
  config MARCH_ZEC12_TUNE
        def_bool TUNE_ZEC12 || MARCH_ZEC12 && TUNE_DEFAULT
  
 +config MARCH_Z13_TUNE
 +      def_bool TUNE_Z13 || MARCH_Z13 && TUNE_DEFAULT
 +
  choice
        prompt "Tune code generation"
        default TUNE_DEFAULT
@@@ -319,9 -308,6 +322,9 @@@ config TUNE_Z19
  config TUNE_ZEC12
        bool "IBM zBC12 and zEC12"
  
 +config TUNE_Z13
 +      bool "IBM z13"
 +
  endchoice
  
  config 64BIT
@@@ -373,14 -359,14 +376,14 @@@ config SM
          Even if you don't know what to do here, say Y.
  
  config NR_CPUS
 -      int "Maximum number of CPUs (2-256)"
 -      range 2 256
 +      int "Maximum number of CPUs (2-512)"
 +      range 2 512
        depends on SMP
        default "32" if !64BIT
        default "64" if 64BIT
        help
          This allows you to specify the maximum number of CPUs which this
 -        kernel will support. The maximum supported value is 256 and the
 +        kernel will support. The maximum supported value is 512 and the
          minimum value which makes sense is 2.
  
          This is purely to save memory - each supported CPU adds
@@@ -395,26 -381,17 +398,26 @@@ config HOTPLUG_CP
          can be controlled through /sys/devices/system/cpu/cpu#.
          Say N if you want to disable CPU hotplug.
  
 +config SCHED_SMT
 +      def_bool n
 +
  config SCHED_MC
        def_bool n
  
  config SCHED_BOOK
 +      def_bool n
 +
 +config SCHED_TOPOLOGY
        def_bool y
 -      prompt "Book scheduler support"
 +      prompt "Topology scheduler support"
        depends on SMP
 +      select SCHED_SMT
        select SCHED_MC
 +      select SCHED_BOOK
        help
 -        Book scheduler support improves the CPU scheduler's decision making
 -        when dealing with machines that have several books.
 +        Topology scheduler support improves the CPU scheduler's decision
 +        making when dealing with machines that have multi-threading,
 +        multiple cores or multiple books.
  
  source kernel/Kconfig.preempt