Thread (6 messages) 6 messages, 2 authors, 2012-02-06

Re: preempt-rt: Real Time hogging task

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2012-02-02 14:12:06

On Thu, 2012-02-02 at 12:52 +0200, Raz wrote:
hey

I am trying to understand why a user space MT process behaves in an
unexpected manner.
I have real time process, which executes most of its threads in RT priority,
and from time to time a task ( medium priority ) is executing without
trying to stop.

There are times, that this task is hogging the entire process and no
other **higher*** rt priority
task is getting any cpu time.

Linux is **not** getting hogged. when setting the serial console (
irq/serial ) and its shell ( /bin/sh )
to a higher priority linux is responsive.

Observing the task list  through ps command i can see that this task's
threads when
to un-interruptible sleep.

Any idea why is it happening ?
Some ideas, but I need a lot more information.
kernel is 3.2.0-rc5-rt8.
Is this a x86 box?

Can you run a trace on the task that is going berserk?

Enable CONFIG_FUNCTION_TRACER in your kernel and do the following:

# mount -t debugfs nodev /sys/kernel/debug
# cd /sys/kernel/debug/tracing
# echo <pid-of-berserk-task> > set_ftrace_pid
# echo function > current_tracer
# cat trace

Thanks!

-- Steve

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help