Re: [feature] automatically detect hung TASK_UNINTERRUPTIBLE tasks

David Rientjes
2007-12-01T18:43:44Z

On Sat, 1 Dec 2007, Ingo Molnar wrote:

> this patch extends the soft-lockup detector to automatically
> detect hung TASK_UNINTERRUPTIBLE tasks. Such hung tasks are
> printed the following way:
>

Wouldn't a natural extension of this feature be to mark these hung
TASK_UNINTERRUPTIBLE tasks with a new thread flag such as TIF_HUNG for the
purposes of the OOM killer?

Right now, the OOM killer will become a no-op when any candidate task that
it scans through is found to have the TIF_MEMDIE flag when selecting a
task to kill. So any hung task in this state could cause the OOM killer
to infinitely loop.

If lockdep could set_tsk_thread_flag(g, TIF_HUNG), this could be detected
in the OOM killer and not only could we prevent the infinite looping but
we could also clear TIF_MEMDIE and reduce the increased timeslice that the
OOM killer gives to the tasks it kills.

David