DebuggingSchedulingWhileAtomic

Differences between revisions 1 and 2
Revision 1 as of 2010-04-06 22:19:02
Size: 1385
Editor: chasedouglas
Comment:
Revision 2 as of 2010-04-07 19:22:04
Size: 1514
Editor: chasedouglas
Comment:
Deletions are marked like this. Additions are marked like this.
Line 15: Line 15:
$ sudo sh -c "echo 1 > /sys/kernel/debug/tracing/tracing_enabled"
$ sudo sh -c "echo 1 > /sys/kernel/debug/tracing/tracing_on"

Scheduling While Atomic Bugs

These bugs occur typically in an interrupt context. I tried to come up with a simple description for what this means and why it's bad, but it was too cumbersome and honestly, you probably just want your bug fixed so you can get on with your life!

Debugging

With normal kernel bugs, an OopsText.txt log file is attached to the bug report at launchpad.net. This often contains enough information for us to get started on resolving the issue. However, the information in this log file usually is not enough for scheduling while atomic bugs. What we need in this case is called a function trace. When you are ready, perform the following to retrieve a trace:

  1. Set the appropriate tracing output:
    $ sudo sh -c "echo 1 > /sys/kernel/debug/tracing/options/latency-format"
  2. Start tracing:
    $ sudo sh -c "echo 1 > /sys/kernel/debug/tracing/tracing_enabled"
    $ sudo sh -c "echo 1 > /sys/kernel/debug/tracing/tracing_on"
    $ sudo sh -c "echo function > /sys/kernel/debug/tracing/current_tracer"
  3. Do whatever you need to do to trigger the bug
  4. Save the trace log:
    $ bzip2 -c /sys/kernel/debug/tracing/trace > trace.bz2
  5. Upload the trace.bz2 file to launchpad so a kernel developer can work on the issue

This should be all the information needed to begin work on a resolution for these types of bugs. The Ubuntu kernel developers sincerely appreciate your work to help us fix your issue!

KernelTeam/DebuggingSchedulingWhileAtomic (last edited 2010-07-21 13:20:40 by jeremyfoshee)