parisc,metag: Implement CONFIG_DEBUG_STACK_USAGE option
On parisc and metag the stack grows upwards, so for those we need to scan the stack downwards in order to calculate how much stack a process has used. Tested on a 64bit parisc kernel. Signed-off-by: Helge Deller <deller@gmx.de>
This commit is contained in:
parent
56649be9e6
commit
6c31da3464
|
@ -2870,10 +2870,18 @@ static inline unsigned long stack_not_used(struct task_struct *p)
|
|||
unsigned long *n = end_of_stack(p);
|
||||
|
||||
do { /* Skip over canary */
|
||||
# ifdef CONFIG_STACK_GROWSUP
|
||||
n--;
|
||||
# else
|
||||
n++;
|
||||
# endif
|
||||
} while (!*n);
|
||||
|
||||
# ifdef CONFIG_STACK_GROWSUP
|
||||
return (unsigned long)end_of_stack(p) - (unsigned long)n;
|
||||
# else
|
||||
return (unsigned long)n - (unsigned long)end_of_stack(p);
|
||||
# endif
|
||||
}
|
||||
#endif
|
||||
extern void set_task_stack_end_magic(struct task_struct *tsk);
|
||||
|
|
|
@ -558,7 +558,7 @@ config DEBUG_KMEMLEAK_DEFAULT_OFF
|
|||
|
||||
config DEBUG_STACK_USAGE
|
||||
bool "Stack utilization instrumentation"
|
||||
depends on DEBUG_KERNEL && !IA64 && !PARISC && !METAG
|
||||
depends on DEBUG_KERNEL && !IA64
|
||||
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.
|
||||
|
|
Loading…
Reference in New Issue