lkml.org 
[lkml]   [2009]   [Jun]   [10]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH 3/5] tracing/events: modify irq print to new format

On Wed, 10 Jun 2009, Christoph Hellwig wrote:

> On Mon, Jun 08, 2009 at 09:45:37PM -0400, Steven Rostedt wrote:
> > -#define softirq_name(sirq) { sirq##_SOFTIRQ, #sirq }
> > -#define show_softirq_name(val) \
> > - __print_symbolic(val, \
> > - softirq_name(HI), \
> > - softirq_name(TIMER), \
> > - softirq_name(NET_TX), \
> > - softirq_name(NET_RX), \
> > - softirq_name(BLOCK), \
> > - softirq_name(TASKLET), \
> > - softirq_name(SCHED), \
> > - softirq_name(HRTIMER), \
> > - softirq_name(RCU))
> > +#define softirq_name(sirq) sirq##_SOFTIRQ, #sirq
> > +#define show_softirq_name(val) \
> > + "%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s>", \
> > + softirq_name(HI), \
> > + softirq_name(TIMER), \
> > + softirq_name(NET_TX), \
> > + softirq_name(NET_RX), \
> > + softirq_name(BLOCK), \
> > + softirq_name(TASKLET), \
> > + softirq_name(SCHED), \
> > + softirq_name(HRTIMER), \
> > + softirq_name(RCU)
>
> This is a massive readability and maintainabilit regression over the
> old code. I now need to add a useless and counter-intuitive %d=%s,
> boilerplate for every new flag I add instead ofa simple line-line
> array entry.
>
> Also why does show_softirq_name get a val argument passed that's never
> used? And no, I don't think

That was from the original, I forgot to remove it.

> %d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s,%d=%s is an intuitive
> way to print an enum.

This is a helper macro and has nothing to do with the new format. In fact,
I'd do something similar with the old format because currently without
that "%d=%s,..." helper we get in the print format:

HRTIMER_SOFTIRQ = "HRTIMER"

How is a user tool going to know what value HRTIMER_SOFTIRQ is?

This was a trick I used to evaluate the HRTIMER_SOFTIRQ to an actual
number that might actually be useful for userland readers.

-- Steve



\
 
 \ /
  Last update: 2009-06-10 14:25    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site