diff options
Diffstat (limited to 'Documentation/CodingStyle')
| -rw-r--r-- | Documentation/CodingStyle | 22 |
1 files changed, 15 insertions, 7 deletions
diff --git a/Documentation/CodingStyle b/Documentation/CodingStyle index 7fe0546c504a..6b6bef31e956 100644 --- a/Documentation/CodingStyle +++ b/Documentation/CodingStyle | |||
| @@ -660,15 +660,23 @@ There are a number of driver model diagnostic macros in <linux/device.h> | |||
| 660 | which you should use to make sure messages are matched to the right device | 660 | which you should use to make sure messages are matched to the right device |
| 661 | and driver, and are tagged with the right level: dev_err(), dev_warn(), | 661 | and driver, and are tagged with the right level: dev_err(), dev_warn(), |
| 662 | dev_info(), and so forth. For messages that aren't associated with a | 662 | dev_info(), and so forth. For messages that aren't associated with a |
| 663 | particular device, <linux/printk.h> defines pr_debug() and pr_info(). | 663 | particular device, <linux/printk.h> defines pr_notice(), pr_info(), |
| 664 | pr_warn(), pr_err(), etc. | ||
| 664 | 665 | ||
| 665 | Coming up with good debugging messages can be quite a challenge; and once | 666 | Coming up with good debugging messages can be quite a challenge; and once |
| 666 | you have them, they can be a huge help for remote troubleshooting. Such | 667 | you have them, they can be a huge help for remote troubleshooting. However |
| 667 | messages should be compiled out when the DEBUG symbol is not defined (that | 668 | debug message printing is handled differently than printing other non-debug |
| 668 | is, by default they are not included). When you use dev_dbg() or pr_debug(), | 669 | messages. While the other pr_XXX() functions print unconditionally, |
| 669 | that's automatic. Many subsystems have Kconfig options to turn on -DDEBUG. | 670 | pr_debug() does not; it is compiled out by default, unless either DEBUG is |
| 670 | A related convention uses VERBOSE_DEBUG to add dev_vdbg() messages to the | 671 | defined or CONFIG_DYNAMIC_DEBUG is set. That is true for dev_dbg() also, |
| 671 | ones already enabled by DEBUG. | 672 | and a related convention uses VERBOSE_DEBUG to add dev_vdbg() messages to |
| 673 | the ones already enabled by DEBUG. | ||
| 674 | |||
| 675 | Many subsystems have Kconfig debug options to turn on -DDEBUG in the | ||
| 676 | corresponding Makefile; in other cases specific files #define DEBUG. And | ||
| 677 | when a debug message should be unconditionally printed, such as if it is | ||
| 678 | already inside a debug-related #ifdef secton, printk(KERN_DEBUG ...) can be | ||
| 679 | used. | ||
| 672 | 680 | ||
| 673 | 681 | ||
| 674 | Chapter 14: Allocating memory | 682 | Chapter 14: Allocating memory |
