![]() For example, KERN_INFO, which we saw prepended to some of the earlier print statements, is Loglevels, or priorities, with the messages. Lets you classify messages according to their severity by associating different Now it’s time to introduce some of the differences. But first, we will look at the classic debuggingĮarlier chapters with the simplifying assumption that it works like We will revisit some of the above options as we look at various ways System performance tuning, but it can also be useful for tracking down some kernel ![]() This option is found under “Profiling support.” Profiling is normally used for Be aware of the security implications of this option, however: it logsĮverything you type, including your passwords. If you are working on a driver for an input device, this option mayīe helpful. This option (under “Device drivers/Input device support”) turns on verbose logging Information for verbose SCSI error messages. This option, found under “Device drivers/SCSI device support,” builds in ![]() Under “Device drivers.” Turns on debugging information in the driver core, whichĬan be useful for tracking down problems in the low-level support code. Under “Power management/ACPI.” This option turns on verbose ACPI (AdvancedĬonfiguration and Power Interface) debugging information, which can be useful if you Useful, though, if you are trying to debug a problem in a kernel built by somebody They used and do not need these options (which make the kernel bigger). Most kernel developers know which configuration These options (found in the “General setup” menu) cause the full kernelĬonfiguration state to be built into the kernel and to be made available via /proc. Kernel traceback only in hexadecimal, which is not very useful. Information is used in debugging contexts without it, an oops listing can give you a Information to be built into the kernel it is enabled by default. This option (under “General setup/Standard features”) causes kernel symbol Monitor stack usage and make some statistics available via the magic SysRq key. Option adds explicit overflow checks to the kernel the second causes the kernel to Overflow is an oops listing without any sort of reasonable back trace. These options can help track down kernel stack overflows. We look at this key in Section 4.5.2 later in this CONFIG_MAGIC_SYSRQĮnables the “magic SysRq” key. You may also want to enable CONFIG_FRAME_POINTER if you plan to use gdb. You’ll need that information if you want to debug the kernel with This option causes the kernel to be built with full debugging information Initialization-time memory after initialization is complete. This option enables checks for code that attempts to access Items marked with _ _init (or _ _initdata) are discarded after system initialization or Inįact, it complains if you call a function that could potentially sleep, even if theĬall in question would not sleep. This option enables a check for attempts to sleep while holding a spinlock. With this option enabled, the kernel catches operations on uninitialized spinlocksĪnd various other errors (such as unlocking a lock twice). Slow things down significantly, but it can also quickly point out certain kinds of CONFIG_DEBUG_PAGEALLOCįull pages are removed from the kernel address space when freed. Various checks for more obscureĮrrors are enabled as well. Overrun a memory allocation, and it complains loudly. Memory object if those values ever get changed, the kernel knows that somebody has ![]() When debugging isĮnabled, the kernel also places special guard values before and after every allocated Oops listing), you’ll know exactly what sort of error to look for. If you ever seeĮither of those “poison” patterns repeating in output from your driver (or often in an To 0xa5 before being handed to the caller and then Memory overrun and missing initialization errors. This crucial option turns on several types of checks in the kernel memoryĪllocation functions with these checks enabled, it is possible to detect a number of This option just makes other debugging options available it should be turned onīut does not, by itself, enable any features.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |