summary refs log tree commit diff
path: root/Documentation/printk-formats.txt
diff options
context:
space:
mode:
authorJoe Perches <joe@perches.com>2012-12-12 10:18:50 -0800
committerJiri Kosina <jkosina@suse.cz>2013-04-30 22:31:16 +0200
commitb0d33c2bd77bcf2d7c9427d2361ac57fe5b33aa1 (patch)
tree2acb72d0e39aee019cf8aecc917685b120e506a3 /Documentation/printk-formats.txt
parent071361d3473ebb8142907470ff12d59c59f6be72 (diff)
downloadlinux-b0d33c2bd77bcf2d7c9427d2361ac57fe5b33aa1.tar.gz
vsprintf: Add extension %pSR - print_symbol replacement
print_symbol takes a long and converts it to a function
name and offset.  %pS does something similar, but doesn't
translate the address via __builtin_extract_return_addr.
%pSR does the translation.

This will enable replacing multiple calls like
	printk(...);
	printk_symbol(addr);
	printk("\n");
with a single non-interleavable in dmesg
	printk("... %pSR\n", (void *)addr);

Update documentation too.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
Diffstat (limited to 'Documentation/printk-formats.txt')
-rw-r--r--Documentation/printk-formats.txt2
1 files changed, 2 insertions, 0 deletions
diff --git a/Documentation/printk-formats.txt b/Documentation/printk-formats.txt
index e8a6aa473bab..e3d0215013da 100644
--- a/Documentation/printk-formats.txt
+++ b/Documentation/printk-formats.txt
@@ -17,6 +17,8 @@ Symbols/Function Pointers:
 	%pF	versatile_init+0x0/0x110
 	%pf	versatile_init
 	%pS	versatile_init+0x0/0x110
+	%pSR	versatile_init+0x9/0x110
+		(with __builtin_extract_return_addr() translation)
 	%ps	versatile_init
 	%pB	prev_fn_of_versatile_init+0x88/0x88