]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blobdiff - Documentation/printk-formats.txt
UBUNTU: Start new release
[mirror_ubuntu-artful-kernel.git] / Documentation / printk-formats.txt
index 65ea5915178b4b9842474b7908d06660444aae34..036f2ab0847c9199e23d903e3e3efee0a1b173df 100644 (file)
@@ -58,20 +58,23 @@ Symbols/Function Pointers
        %ps     versatile_init
        %pB     prev_fn_of_versatile_init+0x88/0x88
 
-For printing symbols and function pointers. The ``S`` and ``s`` specifiers
-result in the symbol name with (``S``) or without (``s``) offsets. Where
-this is used on a kernel without KALLSYMS - the symbol address is
-printed instead.
+The ``F`` and ``f`` specifiers are for printing function pointers,
+for example, f->func, &gettimeofday. They have the same result as
+``S`` and ``s`` specifiers. But they do an extra conversion on
+ia64, ppc64 and parisc64 architectures where the function pointers
+are actually function descriptors.
+
+The ``S`` and ``s`` specifiers can be used for printing symbols
+from direct addresses, for example, __builtin_return_address(0),
+(void *)regs->ip. They result in the symbol name with (``S``) or
+without (``s``) offsets. If KALLSYMS are disabled then the symbol
+address is printed instead.
 
 The ``B`` specifier results in the symbol name with offsets and should be
 used when printing stack backtraces. The specifier takes into
 consideration the effect of compiler optimisations which may occur
 when tail-call``s are used and marked with the noreturn GCC attribute.
 
-On ia64, ppc64 and parisc64 architectures function pointers are
-actually function descriptors which must first be resolved. The ``F`` and
-``f`` specifiers perform this resolution and then provide the same
-functionality as the ``S`` and ``s`` specifiers.
 
 Kernel Pointers
 ===============
@@ -438,6 +441,12 @@ For printing netdev_features_t.
 
 Passed by reference.
 
+Kernel messages:
+
+       %pj     123456
+
+       For generating the jhash of a string truncated to six digits
+
 If you add other ``%p`` extensions, please extend lib/test_printf.c with
 one or more test cases, if at all feasible.