Preemption tracing?

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Preemption tracing?

lars.luthman (Bugzilla)
I'm trying to get the preemption tracing (the kernel sending a SIGUSR2
to a JACK process that is preempted in the process callback) working on
2.6.24.3-rt3. I turned on CONFIG_PREEMPT_TRACER in the kernel config,
built JACK (latest from SVN) with --enable-preemption-check, mounted
debugfs, did

 echo preemptoff > /sys/kernel/debug/tracing/current_tracer
 echo 1 > /sys/kernel/debug/tracing/tracing_enabled

and ran the test client found at the bottom of this page:
http://tapas.affenbande.org/wordpress/?page_id=20

It calls sleep() every 100 cycles, which should trigger the tracing
mechanism, but doesn't.

Does anyone know how this is supposed to work? What am I doing wrong?


--ll

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Jackit-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/jackit-devel

signature.asc (196 bytes) Download Attachment
Reply | Threaded
Open this post in threaded view
|

Re: Preemption tracing?

lars.luthman (Bugzilla)

On Sun, 2008-03-09 at 20:30 +0100, Lars Luthman wrote:

> I'm trying to get the preemption tracing (the kernel sending a SIGUSR2
> to a JACK process that is preempted in the process callback) working on
> 2.6.24.3-rt3. I turned on CONFIG_PREEMPT_TRACER in the kernel config,
> built JACK (latest from SVN) with --enable-preemption-check, mounted
> debugfs, did
>
>  echo preemptoff > /sys/kernel/debug/tracing/current_tracer
>  echo 1 > /sys/kernel/debug/tracing/tracing_enabled
>
> and ran the test client found at the bottom of this page:
> http://tapas.affenbande.org/wordpress/?page_id=20
>
> It calls sleep() every 100 cycles, which should trigger the tracing
> mechanism, but doesn't.
>
> Does anyone know how this is supposed to work? What am I doing wrong?
OK, looks like I confused a couple of things. The atomicity check
(SIGUSR2 to the yielding process) should work with an RT kernel without
turning on any special config options or messing with /sys or /proc
files, according to this LKML post: http://lkml.org/lkml/2004/10/29/312

Or at least it was supposed to in 2.6.9. Has this been removed since
then? Has anyone got it working at all on a recent RT kernel? It would
be too bad if a potentially very useful debugging tool has gone away.


--ll

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
Jackit-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/jackit-devel

signature.asc (196 bytes) Download Attachment