Re: [PATCH v2] tracing/function-graph-tracer: prevent from hrtimerinterrupt infinite loop

From: Ingo Molnar
Date: Thu Dec 18 2008 - 05:35:27 EST



* Frederic Weisbecker <fweisbec@xxxxxxxxx> wrote:

> Impact: fix a system hang on slow systems
>
> While testing the function graph tracer on VirtualBox, I had a system hang
> immediatly after enabling the tracer.
>
> If hrtimer is enabled on kernel, a slow system can spend too much time
> during tracing the hrtimer_interrupt which will do eternal loops,
> assuming it always have to retry its process because too much time
> elapsed during its time update. Now we provide a feature which lurks at
> the number of retries on hrtimer_interrupt. After 10 retries, the
> function graph tracer will definetly stop its tracing.

hm, i dont really like this solution - it just works around the problem by
'speeding up' the system. If we have a _real_ slow system, there's no such
way for us to speed it up.

Thomas, what do you think - would you expect this lockup to happen on
really slow systems? If yes, is there a way we could avoid it from
happening - by driving some sort of 'mandatory interval', that is doubled
in size every time we detect such a bad hrtimer loop?

Ingo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/