[dm-devel] Re: [RFC PATCH dm-ioband] Added in blktrace msgs for dm-ioband

Ryo Tsuruta ryov at valinux.co.jp
Wed May 13 11:30:24 UTC 2009


Hi Li,

From: Li Zefan <lizf at cn.fujitsu.com>
Subject: Re: [RFC PATCH dm-ioband] Added in blktrace msgs for dm-ioband
Date: Wed, 13 May 2009 08:56:13 +0800

> >>>>>> Thanks for your suggestion. I'll use TRACE_EVENT instead.
> >>>>> blk_add_trace_msg() supports both blktrace and tracepoints. I can
> >>>>> get messages from dm-ioband through debugfs. Could you expain why
> >>>>> should we use TRACE_EVENT instead?
> >>>>>
> >>>> Actually blk_add_trace_msg() has nothing to do with tracepoints..
> >>>>
> >>>> If we use blk_add_trace_msg() is dm, we can use it in md, various block
> >>>> drivers and even ext4. So the right thing is, if a subsystem wants to add
> >>>> trace facility, it should use tracepoints/TRACE_EVENT.
> >>>>
> >>>> With TRACE_EVENT, you can get output through debugfs too, and it can be used
> >>>> together with blktrace:
> >>>>
> >>>>  # echo 1 > /sys/block/dm/trace/enable
> >>>>  # echo blk > /debugfs/tracing/current_tracer
> >>>>  # echo dm-ioband-foo > /debugfs/tracing/tracing/set_event
> >>>>  # cat /deubgfs/tracing/trace_pipe
> >>>>  
> >>>> And you can enable dm-ioband-foo while disabling dm-ioband-bar, and you can
> >>>> use filter feature too.
> >>> Thanks for explaining.
> >>> The base kernel of current dm tree (2.6.30-rc4) has not supported
> >>> dm-device tracing yet. I'll consider using TRACE_EVENT when the base
> >>> kernel supports dm-device tracing.
> >>>
> >> I think we don't have any plan on dm-device tracing support, do we? And you
> >> don't need that.
> >>
> >> I downloaded dm-ioband 1.10.4, and applied it to latest tip-tree, and made
> >> a patch to convert those blktrace msgs to trace events.
> >>
> >>  # ls /debug/tracing/events/dm-ioband
> >>  enable  ioband_endio     ioband_issue_list    ioband_urgent_bio
> >>  filter  ioband_hold_bio  ioband_make_request
> >>  # echo 1 /debug/tracing/events/dm-ioband/enable
> >>  # echo blk /debug/tracing/current_tracer
> >>  ...
> > 
> > Is the following line unnecessary in the latest tip-tree?
> > 
> >    # echo 1 > /sys/block/dm/trace/enable
> > 
> 
> Yes, still needed. I was not giving a complete demonstration. ;)
> 
> > How to enable/disable tracing on each device?
> 
> echo 1 > /sys/block/dm-0/trace/enable
> echo 1 > /sys/block/dm-1/trace/enable
> 
> Or use filter facility:
> 
> echo "dev == $(( (ma0 << 20) | mi0 ))" > /debug/tracing/events/dm-ioband/filter
> 
> This will filter out all events generated from dm-1, leaving those from dm-0.
> 

Thanks for further explaining. I'll include your patche into the next
release.

Thanks,
Ryo Tsuruta




More information about the dm-devel mailing list