]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
Merge remote-tracking branch 'rcu/rcu/next'
authorStephen Rothwell <sfr@canb.auug.org.au>
Mon, 17 Sep 2012 06:28:30 +0000 (16:28 +1000)
committerStephen Rothwell <sfr@canb.auug.org.au>
Mon, 17 Sep 2012 06:28:30 +0000 (16:28 +1000)
Conflicts:
arch/Kconfig
arch/x86/Kconfig
kernel/rcutree.h
kernel/rcutree_plugin.h
kernel/sched/core.c

15 files changed:
1  2 
Documentation/kernel-parameters.txt
arch/Kconfig
arch/alpha/kernel/process.c
arch/parisc/kernel/process.c
arch/x86/Kconfig
arch/x86/kernel/entry_64.S
include/linux/sched.h
init/Kconfig
kernel/rcutree.c
kernel/rcutree.h
kernel/rcutree_plugin.h
kernel/rcutree_trace.c
kernel/sched/core.c
kernel/time/tick-sched.c
lib/Kconfig.debug

Simple merge
diff --cc arch/Kconfig
index 07db9299ea86e802374eb18176622d630f14fcb8,1401a758797316ef402c6a35d5957643931a7f8e..d5176b861e32c4278bbfa09b1ddfcc0fa090fe41
@@@ -294,26 -281,14 +294,36 @@@ config SECCOMP_FILTE
  
          See Documentation/prctl/seccomp_filter.txt for details.
  
 +config HAVE_MOD_ARCH_SPECIFIC
 +      bool
 +      help
 +        The arch uses struct mod_arch_specific to store data.  Many arches
 +        just need a simple module loader without arch specific data - those
 +        should not enable this.
 +
 +config MODULES_USE_ELF_RELA
 +      bool
 +      help
 +        Modules only use ELF RELA relocations.  Modules with ELF REL
 +        relocations will give an error.
 +
 +config MODULES_USE_ELF_REL
 +      bool
 +      help
 +        Modules only use ELF REL relocations.  Modules with ELF RELA
 +        relocations will give an error.
 +
 +config HAVE_VIRT_CPU_ACCOUNTING
 +      bool
 +
+ config HAVE_RCU_USER_QS
+       bool
+       help
+         Provide kernel entry/exit hooks necessary for userspace
+         RCU extended quiescent state. Syscalls need to be wrapped inside
+         rcu_user_exit()-rcu_user_enter() through the slow path using
+         TIF_NOHZ flag. Exceptions handlers must be wrapped as well. Irqs
+         are already protected inside rcu_irq_enter/rcu_irq_exit() but
+         preemption or signal handling on irq exit still need to be protected.
  source "kernel/gcov/Kconfig"
Simple merge
Simple merge
index 518be42372fd4c0a5719272b9742a30f8092bed2,5cd953a2d3382435bac744f27fa947bec663db62..629bdae283cc0e2f44293d63942293d54dff47ea
@@@ -102,12 -97,10 +102,13 @@@ config X8
        select KTIME_SCALAR if X86_32
        select GENERIC_STRNCPY_FROM_USER
        select GENERIC_STRNLEN_USER
 +      select MODULES_USE_ELF_REL if X86_32
 +      select MODULES_USE_ELF_RELA if X86_64
+       select HAVE_RCU_USER_QS if X86_64
  
  config INSTRUCTION_DECODER
 -      def_bool (KPROBES || PERF_EVENTS || UPROBES)
 +      def_bool y
 +      depends on KPROBES || PERF_EVENTS || UPROBES
  
  config OUTPUT_FORMAT
        string
Simple merge
Simple merge
diff --cc init/Kconfig
Simple merge
Simple merge
index 1224d4c053823fe7ecdbc2bab9590779c5cc9b7c,499d66196e22b8328c3c9192286daa7bf141f276..5faf05d683265222127e6496668b6821018ff999
@@@ -196,6 -200,13 +200,7 @@@ struct rcu_node 
                                /* Refused to boost: not sure why, though. */
                                /*  This can happen due to race conditions. */
  #endif /* #ifdef CONFIG_RCU_BOOST */
 -      struct task_struct *node_kthread_task;
 -                              /* kthread that takes care of this rcu_node */
 -                              /*  structure, for example, awakening the */
 -                              /*  per-CPU kthreads as needed. */
 -      unsigned int node_kthread_status;
 -                              /* State of node_kthread_task for tracing. */
+       raw_spinlock_t fqslock ____cacheline_internodealigned_in_smp;
  } ____cacheline_internodealigned_in_smp;
  
  /*
index c1961aed12138a39e04ee352d1a070dd238dceb1,5384eda365ac38ce96a49f9617bedd0119fd941f..c1e0226d1e7c393573fee71dc515e231b284d377
@@@ -25,7 -25,7 +25,8 @@@
   */
  
  #include <linux/delay.h>
 +#include <linux/smpboot.h>
+ #include <linux/oom.h>
  
  #define RCU_KTHREAD_PRIO 1
  
Simple merge
Simple merge
Simple merge
Simple merge