Re: [PATCH 6/6] writeback: convert to relative older_than_this intrace events

From: Jan Kara
Date: Wed May 04 2011 - 18:23:40 EST


On Wed 04-05-11 17:17:13, Wu Fengguang wrote:
> This is a format change that could break established scripts.
>
> But hopefully it's more human friendly to show the relative values like
> "30000" (30s old) or "0" (all fresh ones) than long absolute jiffy
> numbers.
It's possibly more human friendly but probably also harder to handle in
scripts. I especially don't like the fact that the number will be changing
at different tracepoints - you'll then have to do some comparisons to find
out whether just the timestamp has been changed or whether just the time
passes by. It's not that hard to write a script doing absolute->relative
conversion (since you have time stamps in the traces) for those cases where
relative time is really what interests you. So do you have any particular
usecase in mind for the relative value?

Honza
>
> Note that the initial 30000 or 0 may increase over time as they are now
> relative numbers.
>
> CC: Jan Kara <jack@xxxxxxx>
> CC: Dave Chinner <david@xxxxxxxxxxxxx>
> Signed-off-by: Wu Fengguang <fengguang.wu@xxxxxxxxx>
> ---
> include/trace/events/writeback.h | 11 ++++++-----
> 1 file changed, 6 insertions(+), 5 deletions(-)
>
> --- linux-next.orig/include/trace/events/writeback.h 2011-05-04 16:09:59.000000000 +0800
> +++ linux-next/include/trace/events/writeback.h 2011-05-04 16:10:57.000000000 +0800
> @@ -115,7 +115,7 @@ DECLARE_EVENT_CLASS(wbc_class,
> __field(int, for_reclaim)
> __field(int, range_cyclic)
> __field(int, more_io)
> - __field(unsigned long, older_than_this)
> + __field(int, older)
> __field(long, range_start)
> __field(long, range_end)
> ),
> @@ -130,14 +130,15 @@ DECLARE_EVENT_CLASS(wbc_class,
> __entry->for_reclaim = wbc->for_reclaim;
> __entry->range_cyclic = wbc->range_cyclic;
> __entry->more_io = wbc->more_io;
> - __entry->older_than_this = wbc->older_than_this ?
> - *wbc->older_than_this : 0;
> + __entry->older = wbc->older_than_this ?
> + (jiffies - *wbc->older_than_this) * 1000 / HZ
> + : -1;
> __entry->range_start = (long)wbc->range_start;
> __entry->range_end = (long)wbc->range_end;
> ),
>
> TP_printk("bdi %s: towrt=%ld skip=%ld mode=%d kupd=%d "
> - "bgrd=%d reclm=%d cyclic=%d more=%d older=0x%lx "
> + "bgrd=%d reclm=%d cyclic=%d more=%d older=%d "
> "start=0x%lx end=0x%lx",
> __entry->name,
> __entry->nr_to_write,
> @@ -148,7 +149,7 @@ DECLARE_EVENT_CLASS(wbc_class,
> __entry->for_reclaim,
> __entry->range_cyclic,
> __entry->more_io,
> - __entry->older_than_this,
> + __entry->older,
> __entry->range_start,
> __entry->range_end)
> )
>
>
--
Jan Kara <jack@xxxxxxx>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/