99
edits
Changes
New page: This page describes some debugging, that can be turned on in order to find more info about an oops/bug/deadlock/etc == Memory debugging options == There are two sets of options, depending...
This page describes some debugging, that can be turned on in order to find more info about an oops/bug/deadlock/etc
== Memory debugging options ==
There are two sets of options, depending on what kind of memory allocator you use
=== SLAB ===
If you have a
<pre>
CONFIG_SLAB=y
# CONFIG_SLUB is not set
</pre>
disposition in your config file, then the proper debugging options are
<pre>
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SLAB_LEAK=y
</pre>
=== SLUB ===
If you have a
<pre>
# CONFIG_SLAB is not set
CONFIG_SLUB=y
</pre>
set of options, then your choice should be
<pre>
CONFIG_SLUB_DEBUG=y
CONFIG_SLUB_DEBUG_ON=y
</pre>
== Locking debugging ==
The following options are useful when debugging various deadlocks and memory corruptions. They produce some performance loss, however.
<pre>
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_LIST=y
</pre>
There are some others, but the above are minimal set.
== Memory debugging options ==
There are two sets of options, depending on what kind of memory allocator you use
=== SLAB ===
If you have a
<pre>
CONFIG_SLAB=y
# CONFIG_SLUB is not set
</pre>
disposition in your config file, then the proper debugging options are
<pre>
CONFIG_DEBUG_KERNEL=y
CONFIG_DEBUG_SLAB=y
CONFIG_DEBUG_SLAB_LEAK=y
</pre>
=== SLUB ===
If you have a
<pre>
# CONFIG_SLAB is not set
CONFIG_SLUB=y
</pre>
set of options, then your choice should be
<pre>
CONFIG_SLUB_DEBUG=y
CONFIG_SLUB_DEBUG_ON=y
</pre>
== Locking debugging ==
The following options are useful when debugging various deadlocks and memory corruptions. They produce some performance loss, however.
<pre>
CONFIG_DEBUG_SPINLOCK=y
CONFIG_DEBUG_MUTEXES=y
CONFIG_DEBUG_LOCK_ALLOC=y
CONFIG_DEBUG_SPINLOCK_SLEEP=y
CONFIG_DEBUG_LIST=y
</pre>
There are some others, but the above are minimal set.