On Wed, 1 Apr 2015 08:30:05 +1100 Dave Chinner <[email protected]> wrote:
> On Fri, Mar 27, 2015 at 05:37:04PM -0400, Steven Rostedt wrote: > > > > As there are many tracepoints that use __print_symbolic() to translate > > numbers into ASCII strings, and several of these translate enums as > > well, it causes a problem for user space tools that read the tracepoint > > format files and have to translate the binary data to their associated > > strings. > ..... > > Steven Rostedt (Red Hat) (10): > > tracing: Add TRACE_DEFINE_ENUM() macro to map enums to their values > > tracing: Allow for modules to export their trace enums as well > > x86/tlb/trace: Export enums in used by tlb_flush tracepoint > > net/9p/tracing: Export enums in tracepoints to userspace > > f2fs: Export the enums in the tracepoints to userspace > > irq/tracing: Export enums in tracepoints to user space > > mm: tracing: Export enums in tracepoints to user space > > SUNRPC: Export enums in tracepoints to user space > > v4l: Export enums used by tracepoints to user space > > writeback: Export enums used by tracepoint to user space > > So are you expecting subsystem maintainers to modify their tracing > code to do this, or is this just the first round of changes you are > making? e.g: > > $ grep print_symbolic fs/xfs/xfs_trace.h > __print_symbolic(__entry->trans_type, XFS_TRANS_TYPES), > __print_symbolic(__entry->type, XFS_LI_TYPE_DESC), > __print_symbolic(__entry->type, XFS_LI_TYPE_DESC), > __print_symbolic(__entry->type, XFS_IO_TYPES), > __print_symbolic(__entry->type, XFS_ALLOC_TYPES), > __print_symbolic(__entry->otype, XFS_ALLOC_TYPES), > __print_symbolic(__entry->which, XFS_SWAPEXT_INODES), > __print_symbolic(__entry->format, XFS_INODE_FORMAT_STR), > __print_symbolic(__entry->type, XFS_LI_TYPE_DESC), Note, it only is needed for enums. Those look to be macros (#define), which does not have a problem (the value is shown to userspace, not the name). > $ > > And a quick git grep indicates there are a lot that you haven't > converted in this patchset... But yes, I only covered the include/trace/events/*.h files. I'm sure there's others I would need to update. But this can be done incrementally. -- Steve -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [email protected] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/

