stack usage: Add pid to warning printk in check_stack_usage
PATCH 1/1 stack usage: Add pid to warning printk in check_stack_usage
In embedded systems, sometimes the same program (busybox) is the cause of multiple warnings. Outputting the pid with the program name in the warning printk helps distinguish which instances of a program are using the stack most.
This is a small patch, but useful.
Signed-off-by Tim Bird <[email protected]>
--- exit.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
kernel/exit.c +3 -3
@@ -898,9 +898,9 @@ static void check_stack_usage(void)spin_lock (&low_water_lock);if (free < lowest_to_date) { -printk (KERN_WARNING "%s used greatest stack depth: %lu bytes " -"left\n" , - current->comm, free); +printk (KERN_WARNING "%s (%d) used greatest stack depth: " +"%lu bytes left\n" , + current->comm,task_pid_nr (current), free); lowest_to_date = free; }spin_unlock (&low_water_lock);
Quoted 8 lines · Tim Bird
In embedded systems, sometimes the same program (busybox) is the cause of multiple warnings. Outputting the pid with the program name in the warning printk helps distinguish which instances of a program are using the stack most.
This is a small patch, but useful.
Agreed, pid_nr alone is useless if you read the logs when this app has already terminated.
Quoted 23 lines
Signed-off-by Tim Bird <[email protected]>--- exit.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)kernel/exit.c +3
-3@@ -898,9 +898,9 @@ static void check_stack_usage(void)spin_lock (&low_water_lock);if (free < lowest_to_date) { -printk (KERN_WARNING "%s used greatest stack depth: %lu bytes " -"left\n" , - current->comm, free); +printk (KERN_WARNING "%s (%d) used greatest stack depth: " +"%lu bytes left\n" , + current->comm,task_pid_nr (current), free); lowest_to_date = free; }spin_unlock (&low_water_lock);