public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* dynamic_printk documentation
@ 2008-12-23 12:25 Tilman Schmidt
  2008-12-23 16:22 ` Jason Baron
  0 siblings, 1 reply; 3+ messages in thread
From: Tilman Schmidt @ 2008-12-23 12:25 UTC (permalink / raw)
  To: linux-kernel, Jason Baron

Where is the current debugfs interface to dynamic_printk documented?
>From the source in lib/dynamic_printk.c I deduced that

echo "set enable=1 <module_name>" > /sys/kernel/debug/dynamic_printk/modules

should enable debug output for module <module_name>, and verified
experimentally that this does indeed work. Is that already described
somewhere I just overlooked? If not, I would propose creating a file
Documentation/dynamic_printk.txt.

Thanks,
Tilman

^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: dynamic_printk documentation
  2008-12-23 12:25 dynamic_printk documentation Tilman Schmidt
@ 2008-12-23 16:22 ` Jason Baron
  2009-01-03 18:48   ` Michael Kerrisk
  0 siblings, 1 reply; 3+ messages in thread
From: Jason Baron @ 2008-12-23 16:22 UTC (permalink / raw)
  To: Tilman Schmidt; +Cc: linux-kernel

On Tue, Dec 23, 2008 at 01:25:25PM +0100, Tilman Schmidt wrote:
> Where is the current debugfs interface to dynamic_printk documented?
> From the source in lib/dynamic_printk.c I deduced that
> 
> echo "set enable=1 <module_name>" > /sys/kernel/debug/dynamic_printk/modules
> 
> should enable debug output for module <module_name>, and verified
> experimentally that this does indeed work. Is that already described
> somewhere I just overlooked? If not, I would propose creating a file
> Documentation/dynamic_printk.txt.
> 
> Thanks,
> Tilman

hi,

Most of it is with the config parameter definition in lib/Kconfig.debug
(copied below). I can propose copying it into Documentation/ if you think it'd 
be useful.

thanks,

-Jason


config DYNAMIC_PRINTK_DEBUG
	bool "Enable dynamic printk() call support"
	default n
	depends on PRINTK
	select PRINTK_DEBUG
	help

	  Compiles debug level messages into the kernel, which would not
	  otherwise be available at runtime. These messages can then be
	  enabled/disabled on a per module basis. This mechanism implicitly
	  enables all pr_debug() and dev_dbg() calls. The impact of this
	  compile option is a larger kernel text size of about 2%.

	  Usage:

	  Dynamic debugging is controlled by the debugfs file,
	  dynamic_printk/modules. This file contains a list of the modules that
	  can be enabled. The format of the file is the module name, followed
	  by a set of flags that can be enabled. The first flag is always the
	  'enabled' flag. For example:

		<module_name> <enabled=0/1>
				.
				.
				.

	  <module_name> : Name of the module in which the debug call resides
	  <enabled=0/1> : whether the messages are enabled or not

	  From a live system:

		snd_hda_intel enabled=0
		fixup enabled=0
		driver enabled=0

	  Enable a module:

	  	$echo "set enabled=1 <module_name>" > dynamic_printk/modules

	  Disable a module:

	  	$echo "set enabled=0 <module_name>" > dynamic_printk/modules

	  Enable all modules:

		$echo "set enabled=1 all" > dynamic_printk/modules

	  Disable all modules:

		$echo "set enabled=0 all" > dynamic_printk/modules

	  Finally, passing "dynamic_printk" at the command line enables
	  debugging for all modules. This mode can be turned off via the above
	  disable command.


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: dynamic_printk documentation
  2008-12-23 16:22 ` Jason Baron
@ 2009-01-03 18:48   ` Michael Kerrisk
  0 siblings, 0 replies; 3+ messages in thread
From: Michael Kerrisk @ 2009-01-03 18:48 UTC (permalink / raw)
  To: Jason Baron; +Cc: Tilman Schmidt, linux-kernel, Michael Kerrisk

On Wed, Dec 24, 2008 at 5:22 AM, Jason Baron <jbaron@redhat.com> wrote:
> On Tue, Dec 23, 2008 at 01:25:25PM +0100, Tilman Schmidt wrote:
>> Where is the current debugfs interface to dynamic_printk documented?
>> From the source in lib/dynamic_printk.c I deduced that
>>
>> echo "set enable=1 <module_name>" > /sys/kernel/debug/dynamic_printk/modules
>>
>> should enable debug output for module <module_name>, and verified
>> experimentally that this does indeed work. Is that already described
>> somewhere I just overlooked? If not, I would propose creating a file
>> Documentation/dynamic_printk.txt.
>>
>> Thanks,
>> Tilman
>
> hi,
>
> Most of it is with the config parameter definition in lib/Kconfig.debug
> (copied below). I can propose copying it into Documentation/ if you think it'd
> be useful.

That would make some sense.  Kconfig isn't usually the place where
where one expects to look for usage documentation.

Cheers,

Michael

> config DYNAMIC_PRINTK_DEBUG
>        bool "Enable dynamic printk() call support"
>        default n
>        depends on PRINTK
>        select PRINTK_DEBUG
>        help
>
>          Compiles debug level messages into the kernel, which would not
>          otherwise be available at runtime. These messages can then be
>          enabled/disabled on a per module basis. This mechanism implicitly
>          enables all pr_debug() and dev_dbg() calls. The impact of this
>          compile option is a larger kernel text size of about 2%.
>
>          Usage:
>
>          Dynamic debugging is controlled by the debugfs file,
>          dynamic_printk/modules. This file contains a list of the modules that
>          can be enabled. The format of the file is the module name, followed
>          by a set of flags that can be enabled. The first flag is always the
>          'enabled' flag. For example:
>
>                <module_name> <enabled=0/1>
>                                .
>                                .
>                                .
>
>          <module_name> : Name of the module in which the debug call resides
>          <enabled=0/1> : whether the messages are enabled or not
>
>          From a live system:
>
>                snd_hda_intel enabled=0
>                fixup enabled=0
>                driver enabled=0
>
>          Enable a module:
>
>                $echo "set enabled=1 <module_name>" > dynamic_printk/modules
>
>          Disable a module:
>
>                $echo "set enabled=0 <module_name>" > dynamic_printk/modules
>
>          Enable all modules:
>
>                $echo "set enabled=1 all" > dynamic_printk/modules
>
>          Disable all modules:
>
>                $echo "set enabled=0 all" > dynamic_printk/modules
>
>          Finally, passing "dynamic_printk" at the command line enables
>          debugging for all modules. This mode can be turned off via the above
>          disable command.
>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at  http://www.tux.org/lkml/
>



-- 
Michael Kerrisk Linux man-pages maintainer;
http://www.kernel.org/doc/man-pages/ Found a documentation bug?
http://www.kernel.org/doc/man-pages/reporting_bugs.html

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2009-01-03 18:48 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-12-23 12:25 dynamic_printk documentation Tilman Schmidt
2008-12-23 16:22 ` Jason Baron
2009-01-03 18:48   ` Michael Kerrisk

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox