1. 29 Apr, 2009 1 commit
    • Frederic Weisbecker's avatar
      vsprintf: introduce %pf format specifier · 0c8b946e
      Frederic Weisbecker authored
      A printf format specifier which would allow us to print a pure
      function name has been suggested by Andrew Morton a couple of
      months ago.
      
      The current %pF is very convenient to print a function symbol,
      but often we only want to print the name of the function, without
      its asm offset.
      
      That's what  %pf does in this patch.  The lowecase f has been chosen
      for its intuitive meaning of a 'weak kind of %pF'.
      
      The support for this new format would be welcome by the tracing code
      where the need to print pure function names is often needed. This is
      also true for other parts of the kernel:
      
      $ git-grep -E "kallsyms_lookup\(.+?\)"
      arch/blackfin/kernel/traps.c:   symname = kallsyms_lookup(address, &symsize, &offset, &modname, namebuf);
      arch/powerpc/xmon/xmon.c:               name = kallsyms_lookup(pc, &size, &offset, NULL, tmpstr);
      arch/sh/kernel/cpu/sh5/unwind.c:        sym = kallsyms_lookup(pc, NULL, &offset, NULL, namebuf);
      arch/x86/kernel/ftrace.c:       kallsyms_lookup((unsigned long) syscall, NULL, NULL, NULL, str);
      kernel/kprobes.c:               sym = kallsyms_lookup((unsigned long)p->addr, NULL,
      kernel/lockdep.c:       return kallsyms_lookup((unsigned long)key, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(rec->ip, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(rec->ip, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup((unsigned long)rec->ops->func, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(rec->ip, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(rec->ip, NULL, NULL, NULL, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(rec->ip, NULL, NULL, &modname, str);
      kernel/trace/ftrace.c:  kallsyms_lookup(*ptr, NULL, NULL, NULL, str);
      kernel/trace/trace_functions.c: kallsyms_lookup(ip, NULL, NULL, NULL, str);
      kernel/trace/trace_output.c:    kallsyms_lookup(address, NULL, NULL, NULL, str);
      
      Changes in v2:
      
      - Add the explanation of the %pf role for vsnprintf() and bstr_printf()
      
      - Change the comments by dropping the "asm offset" notion and only
        define the %pf against the actual function offset notion.
      Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>
      Acked-by: default avatarMike Frysinger <vapier@gentoo.org>
      Cc: Linus Torvalds <torvalds@linux-foundation.org>
      Cc: Zhaolei <zhaolei@cn.fujitsu.com>
      Cc: Tom Zanussi <tzanussi@gmail.com>
      Cc: Li Zefan <lizf@cn.fujitsu.com>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Steven Rostedt <rostedt@goodmis.org>
      LKML-Reference: <20090415154817.GC5989@nowhere>
      Signed-off-by: default avatarIngo Molnar <mingo@elte.hu>
      0c8b946e
  2. 08 Apr, 2009 3 commits
  3. 07 Apr, 2009 36 commits