]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
Merge branch 'core/debugobjects' into core/urgent
authorThomas Gleixner <tglx@linutronix.de>
Thu, 22 Jan 2009 09:03:02 +0000 (10:03 +0100)
committerThomas Gleixner <tglx@linutronix.de>
Thu, 22 Jan 2009 09:03:02 +0000 (10:03 +0100)
1  2 
init/Kconfig
kernel/sysctl.c

diff --combined init/Kconfig
index 989f58b03958da73a1aae1b40e03f5e3c5905d2a,2af83825634e2acbde448f88655f855df226f0b7..3be35f3a001b4bfc1741139dbc0fe20e2071e3cb
@@@ -238,98 -238,6 +238,98 @@@ config AUDIT_TRE
        def_bool y
        depends on AUDITSYSCALL && INOTIFY
  
 +menu "RCU Subsystem"
 +
 +choice
 +      prompt "RCU Implementation"
 +      default CLASSIC_RCU
 +
 +config CLASSIC_RCU
 +      bool "Classic RCU"
 +      help
 +        This option selects the classic RCU implementation that is
 +        designed for best read-side performance on non-realtime
 +        systems.
 +
 +        Select this option if you are unsure.
 +
 +config TREE_RCU
 +      bool "Tree-based hierarchical RCU"
 +      help
 +        This option selects the RCU implementation that is
 +        designed for very large SMP system with hundreds or
 +        thousands of CPUs.
 +
 +config PREEMPT_RCU
 +      bool "Preemptible RCU"
 +      depends on PREEMPT
 +      help
 +        This option reduces the latency of the kernel by making certain
 +        RCU sections preemptible. Normally RCU code is non-preemptible, if
 +        this option is selected then read-only RCU sections become
 +        preemptible. This helps latency, but may expose bugs due to
 +        now-naive assumptions about each RCU read-side critical section
 +        remaining on a given CPU through its execution.
 +
 +endchoice
 +
 +config RCU_TRACE
 +      bool "Enable tracing for RCU"
 +      depends on TREE_RCU || PREEMPT_RCU
 +      help
 +        This option provides tracing in RCU which presents stats
 +        in debugfs for debugging RCU implementation.
 +
 +        Say Y here if you want to enable RCU tracing
 +        Say N if you are unsure.
 +
 +config RCU_FANOUT
 +      int "Tree-based hierarchical RCU fanout value"
 +      range 2 64 if 64BIT
 +      range 2 32 if !64BIT
 +      depends on TREE_RCU
 +      default 64 if 64BIT
 +      default 32 if !64BIT
 +      help
 +        This option controls the fanout of hierarchical implementations
 +        of RCU, allowing RCU to work efficiently on machines with
 +        large numbers of CPUs.  This value must be at least the cube
 +        root of NR_CPUS, which allows NR_CPUS up to 32,768 for 32-bit
 +        systems and up to 262,144 for 64-bit systems.
 +
 +        Select a specific number if testing RCU itself.
 +        Take the default if unsure.
 +
 +config RCU_FANOUT_EXACT
 +      bool "Disable tree-based hierarchical RCU auto-balancing"
 +      depends on TREE_RCU
 +      default n
 +      help
 +        This option forces use of the exact RCU_FANOUT value specified,
 +        regardless of imbalances in the hierarchy.  This is useful for
 +        testing RCU itself, and might one day be useful on systems with
 +        strong NUMA behavior.
 +
 +        Without RCU_FANOUT_EXACT, the code will balance the hierarchy.
 +
 +        Say N if unsure.
 +
 +config TREE_RCU_TRACE
 +      def_bool RCU_TRACE && TREE_RCU
 +      select DEBUG_FS
 +      help
 +        This option provides tracing for the TREE_RCU implementation,
 +        permitting Makefile to trivially select kernel/rcutree_trace.c.
 +
 +config PREEMPT_RCU_TRACE
 +      def_bool RCU_TRACE && PREEMPT_RCU
 +      select DEBUG_FS
 +      help
 +        This option provides tracing for the PREEMPT_RCU implementation,
 +        permitting Makefile to trivially select kernel/rcupreempt_trace.c.
 +
 +endmenu # "RCU Subsystem"
 +
  config IKCONFIG
        tristate "Kernel .config support"
        ---help---
@@@ -415,26 -323,26 +415,26 @@@ config CGROUP_SCHE
          This option allows you to create arbitrary task groups
          using the "cgroup" pseudo filesystem and control
          the cpu bandwidth allocated to each such task group.
-         Refer to Documentation/cgroups.txt for more information
-         on "cgroup" pseudo filesystem.
+         Refer to Documentation/cgroups/cgroups.txt for more
+         information on "cgroup" pseudo filesystem.
  
  endchoice
  
- menu "Control Group support"
- config CGROUPS
-       bool "Control Group support"
+ menuconfig CGROUPS
+       boolean "Control Group support"
        help
-         This option add support for grouping sets of processes together, for
+         This option adds support for grouping sets of processes together, for
          use with process control subsystems such as Cpusets, CFS, memory
          controls or device isolation.
          See
-               - Documentation/cpusets.txt     (Cpusets)
                - Documentation/scheduler/sched-design-CFS.txt  (CFS)
-               - Documentation/cgroups/ (features for grouping, isolation)
-               - Documentation/controllers/ (features for resource control)
+               - Documentation/cgroups/ (features for grouping, isolation
+                                         and resource control)
  
          Say N if unsure.
  
+ if CGROUPS
  config CGROUP_DEBUG
        bool "Example debug cgroup subsystem"
        depends on CGROUPS
        help
          This option enables a simple cgroup subsystem that
          exports useful debugging information about the cgroups
-         framework
+         framework.
  
-         Say N if unsure
+         Say N if unsure.
  
  config CGROUP_NS
-         bool "Namespace cgroup subsystem"
-         depends on CGROUPS
-         help
-           Provides a simple namespace cgroup subsystem to
-           provide hierarchical naming of sets of namespaces,
-           for instance virtual servers and checkpoint/restart
-           jobs.
+       bool "Namespace cgroup subsystem"
+       depends on CGROUPS
+       help
+         Provides a simple namespace cgroup subsystem to
+         provide hierarchical naming of sets of namespaces,
+         for instance virtual servers and checkpoint/restart
+         jobs.
  
  config CGROUP_FREEZER
-         bool "control group freezer subsystem"
-         depends on CGROUPS
-         help
-           Provides a way to freeze and unfreeze all tasks in a
+       bool "Freezer cgroup subsystem"
+       depends on CGROUPS
+       help
+         Provides a way to freeze and unfreeze all tasks in a
          cgroup.
  
  config CGROUP_DEVICE
@@@ -480,18 -388,23 +480,23 @@@ config CPUSET
  
          Say N if unsure.
  
+ config PROC_PID_CPUSET
+       bool "Include legacy /proc/<pid>/cpuset file"
+       depends on CPUSETS
+       default y
  config CGROUP_CPUACCT
        bool "Simple CPU accounting cgroup subsystem"
        depends on CGROUPS
        help
          Provides a simple Resource Controller for monitoring the
-         total CPU consumed by the tasks in a cgroup
+         total CPU consumed by the tasks in a cgroup.
  
  config RESOURCE_COUNTERS
        bool "Resource counters"
        help
          This option enables controller independent resource accounting
-           infrastructure that works with cgroups
+         infrastructure that works with cgroups.
        depends on CGROUPS
  
  config CGROUP_MEM_RES_CTLR
          This config option also selects MM_OWNER config option, which
          could in turn add some fork/exit overhead.
  
- config MM_OWNER
-       bool
  config CGROUP_MEM_RES_CTLR_SWAP
        bool "Memory Resource Controller Swap Extension(EXPERIMENTAL)"
        depends on CGROUP_MEM_RES_CTLR && SWAP && EXPERIMENTAL
          there will be no overhead from this. Even when you set this config=y,
          if boot option "noswapaccount" is set, swap will not be accounted.
  
+ endif # CGROUPS
  
- endmenu
+ config MM_OWNER
+       bool
  
  config SYSFS_DEPRECATED
        bool
@@@ -575,11 -487,6 +579,6 @@@ config SYSFS_DEPRECATED_V
          if the original kernel, that came with your distribution, has
          this option set to N.
  
- config PROC_PID_CPUSET
-       bool "Include legacy /proc/<pid>/cpuset file"
-       depends on CPUSETS
-       default y
  config RELAY
        bool "Kernel->user space relay support (formerly relayfs)"
        help
@@@ -1065,3 -972,90 +1064,3 @@@ source "block/Kconfig
  config PREEMPT_NOTIFIERS
        bool
  
 -choice
 -      prompt "RCU Implementation"
 -      default CLASSIC_RCU
 -
 -config CLASSIC_RCU
 -      bool "Classic RCU"
 -      help
 -        This option selects the classic RCU implementation that is
 -        designed for best read-side performance on non-realtime
 -        systems.
 -
 -        Select this option if you are unsure.
 -
 -config TREE_RCU
 -      bool "Tree-based hierarchical RCU"
 -      help
 -        This option selects the RCU implementation that is
 -        designed for very large SMP system with hundreds or
 -        thousands of CPUs.
 -
 -config PREEMPT_RCU
 -      bool "Preemptible RCU"
 -      depends on PREEMPT
 -      help
 -        This option reduces the latency of the kernel by making certain
 -        RCU sections preemptible. Normally RCU code is non-preemptible, if
 -        this option is selected then read-only RCU sections become
 -        preemptible. This helps latency, but may expose bugs due to
 -        now-naive assumptions about each RCU read-side critical section
 -        remaining on a given CPU through its execution.
 -
 -endchoice
 -
 -config RCU_TRACE
 -      bool "Enable tracing for RCU"
 -      depends on TREE_RCU || PREEMPT_RCU
 -      help
 -        This option provides tracing in RCU which presents stats
 -        in debugfs for debugging RCU implementation.
 -
 -        Say Y here if you want to enable RCU tracing
 -        Say N if you are unsure.
 -
 -config RCU_FANOUT
 -      int "Tree-based hierarchical RCU fanout value"
 -      range 2 64 if 64BIT
 -      range 2 32 if !64BIT
 -      depends on TREE_RCU
 -      default 64 if 64BIT
 -      default 32 if !64BIT
 -      help
 -        This option controls the fanout of hierarchical implementations
 -        of RCU, allowing RCU to work efficiently on machines with
 -        large numbers of CPUs.  This value must be at least the cube
 -        root of NR_CPUS, which allows NR_CPUS up to 32,768 for 32-bit
 -        systems and up to 262,144 for 64-bit systems.
 -
 -        Select a specific number if testing RCU itself.
 -        Take the default if unsure.
 -
 -config RCU_FANOUT_EXACT
 -      bool "Disable tree-based hierarchical RCU auto-balancing"
 -      depends on TREE_RCU
 -      default n
 -      help
 -        This option forces use of the exact RCU_FANOUT value specified,
 -        regardless of imbalances in the hierarchy.  This is useful for
 -        testing RCU itself, and might one day be useful on systems with
 -        strong NUMA behavior.
 -
 -        Without RCU_FANOUT_EXACT, the code will balance the hierarchy.
 -
 -        Say N if unsure.
 -
 -config TREE_RCU_TRACE
 -      def_bool RCU_TRACE && TREE_RCU
 -      select DEBUG_FS
 -      help
 -        This option provides tracing for the TREE_RCU implementation,
 -        permitting Makefile to trivially select kernel/rcutree_trace.c.
 -
 -config PREEMPT_RCU_TRACE
 -      def_bool RCU_TRACE && PREEMPT_RCU
 -      select DEBUG_FS
 -      help
 -        This option provides tracing for the PREEMPT_RCU implementation,
 -        permitting Makefile to trivially select kernel/rcupreempt_trace.c.
diff --combined kernel/sysctl.c
index 596dc31a71168abfb1cdad5c274dfb4da7660a0c,368d1638ee78229c87067c4d805f7145fe79c352..790f9d785663105cdd5fcc44f33d4d8792f09761
@@@ -144,6 -144,7 +144,7 @@@ extern int acct_parm[]
  
  #ifdef CONFIG_IA64
  extern int no_unaligned_warning;
+ extern int unaligned_dump_stack;
  #endif
  
  #ifdef CONFIG_RT_MUTEXES
@@@ -781,6 -782,14 +782,14 @@@ static struct ctl_table kern_table[] = 
                .mode           = 0644,
                .proc_handler   = &proc_dointvec,
        },
+       {
+               .ctl_name       = CTL_UNNUMBERED,
+               .procname       = "unaligned-dump-stack",
+               .data           = &unaligned_dump_stack,
+               .maxlen         = sizeof (int),
+               .mode           = 0644,
+               .proc_handler   = &proc_dointvec,
+       },
  #endif
  #ifdef CONFIG_DETECT_SOFTLOCKUP
        {
                .data           = &softlockup_thresh,
                .maxlen         = sizeof(int),
                .mode           = 0644,
 -              .proc_handler   = &proc_dointvec_minmax,
 +              .proc_handler   = &proc_dosoftlockup_thresh,
                .strategy       = &sysctl_intvec,
                .extra1         = &neg_one,
                .extra2         = &sixty,
@@@ -1688,7 -1697,7 +1697,7 @@@ int do_sysctl(int __user *name, int nle
        return error;
  }
  
asmlinkage long sys_sysctl(struct __sysctl_args __user *args)
SYSCALL_DEFINE1(sysctl, struct __sysctl_args __user *, args)
  {
        struct __sysctl_args tmp;
        int error;
@@@ -2989,7 -2998,7 +2998,7 @@@ int sysctl_ms_jiffies(struct ctl_table 
  #else /* CONFIG_SYSCTL_SYSCALL */
  
  
asmlinkage long sys_sysctl(struct __sysctl_args __user *args)
SYSCALL_DEFINE1(sysctl, struct __sysctl_args __user *, args)
  {
        struct __sysctl_args tmp;
        int error;