summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorTony Luck <tony.luck@intel.com>2012-07-18 10:35:05 -0700
committerTony Luck <tony.luck@intel.com>2012-07-19 10:36:45 -0700
commite9c31b32f1cc6d3aa190119103622fb8e4c257b1 (patch)
tree81befbf8ec35edad58d5ea09a4321a284d13b138 /lib
parentf28fa729149c8b39699f7995ce5fff34c5145a9d (diff)
downloadlinux-stable-e9c31b32f1cc6d3aa190119103622fb8e4c257b1.tar.gz
linux-stable-e9c31b32f1cc6d3aa190119103622fb8e4c257b1.tar.bz2
linux-stable-e9c31b32f1cc6d3aa190119103622fb8e4c257b1.zip
debug: Do not permit CONFIG_DEBUG_STACK_USAGE=y on IA64 or PARISC
The stack_not_used() function in <linux/sched.h> assumes that stacks grow downwards. This is not true on IA64 or PARISC, so this function would walk off in the wrong direction and into the weeds. Found on IA64 because of a compilation failure with recursive dependencies on IA64_TASKSIZE and IA64_THREAD_INFO_SIZE. Fixing the code is possible, but should be combined with other infrastructure additions to set up the "canary" at the end of the stack. Reported-by: Fengguang Wu <fengguang.wu@intel.com> (failed allmodconfig build) Signed-off-by: Tony Luck <tony.luck@intel.com>
Diffstat (limited to 'lib')
-rw-r--r--lib/Kconfig.debug2
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/Kconfig.debug b/lib/Kconfig.debug
index a42d3ae39648..5d3e3288438f 100644
--- a/lib/Kconfig.debug
+++ b/lib/Kconfig.debug
@@ -694,7 +694,7 @@ config STACKTRACE
config DEBUG_STACK_USAGE
bool "Stack utilization instrumentation"
- depends on DEBUG_KERNEL
+ depends on DEBUG_KERNEL && !IA64 && !PARISC
help
Enables the display of the minimum amount of free stack which each
task has ever had available in the sysrq-T and sysrq-P debug output.