Messages in this thread | | | Subject | Re: [PACTH v1] kernel/hung_task.c: Dump all UNINTERUPTIBLE tasks | From | Robert Foss <> | Date | Thu, 11 Aug 2016 12:35:44 -0400 |
| |
On 2016-08-10 06:43 PM, Andrew Morton wrote: > On Tue, 2 Aug 2016 11:23:11 -0400 robert.foss@collabora.com wrote: > >> From: Aaron Durbin <adurbin@chromium.org> >> >> When the panic path is taken for khungtaskd dump all >> tasks with the UNINTERUPTIBLE state. That way, any >> inter-dependent tasks that caused one another to hang >> will be saved in the crash output. >> >> ... >> >> --- a/kernel/hung_task.c >> +++ b/kernel/hung_task.c >> @@ -122,6 +122,8 @@ static void check_hung_task(struct task_struct *t, unsigned long timeout) >> touch_nmi_watchdog(); >> >> if (sysctl_hung_task_panic) { >> + /* Dump all tasks. */ >> + show_state_filter(TASK_UNINTERRUPTIBLE); >> trigger_all_cpu_backtrace(); >> panic("hung_task: blocked tasks"); >> } > > Well, it's going to produce more gunk for the operator to read through > and understand. > > I'd like to hear a little more about the value of this change: what > particular problem prompted it, etc. >
It would indeed provide more gunk. What makes it useful is that is on enabled by default and enables rapid debugging of devices that are not physically accessible or accessible for debugging otherwise.
So the primary usecase would be when a user of a device is seeing some issues and submits the logs from the device. Without any further action from the user, the problem could potentially be solved.
| |