• Steven Rostedt's avatar
    tracing: add __print_flags for events · be74b73a
    Steven Rostedt authored
    Developers have been asking for the ability in the ftrace event tracer
    to display names of bits in a flags variable.
    Instead of printing out c2, it would be easier to read FOO|BAR|GOO,
    assuming that FOO is bit 1, BAR is bit 6 and GOO is bit 7.
    Some examples where this would be useful are the state flags in a context
    switch, kmalloc flags, and even permision flags in accessing files.
      v2 changes include:
      Frederic Weisbecker's idea of using a mask instead of bits,
      thus we can output GFP_KERNEL instead of GPF_WAIT|GFP_IO|GFP_FS.
      Li Zefan's idea of allowing the caller of __print_flags to add their
      own delimiter (or no delimiter) where we can get for file permissions
      rwx instead of r|w|x.
      v3 changes:
       Christoph Hellwig's idea of using an array instead of va_args.
    [ Impact: better displaying of flags in trace output ]
    Signed-off-by: default avatarSteven Rostedt <rostedt@goodmis.org>
    Signed-off-by: default avatarFrederic Weisbecker <fweisbec@gmail.com>