Messages in this thread |  | | | Date | Tue, 14 Apr 2009 16:53:41 +0800 | | From | Li Zefan <> | | Subject | Re: PATCH 1/3] blktrace: support per-partition tracing |
| |
>>> Lets note that this approach still has the (long existing) >>> limitation that only one device can be block-traced at a time. >>> >> No, both userspace blktrace and ftrace-plugin trace can trace >> more than one device at a time. >> >> # btrace /dev/sda /dev/dm-0 >> >> or >> >> # echo 1 > /sys/block/sda/trace/enable >> # echo 1 > /sys/block/dm-0/trace/enable > > When they are independent - but not multiple partitions at a time: >
The only way to trace multipl partitions is to trace the whole sda, or set trace/start_lsa and trace/end_lsa properly.
> [root@aldebaran ~]# echo 1 > /sys/block/sda/sda1/trace/enable > [root@aldebaran ~]# echo 1 > /sys/block/sda/sda2/trace/enable > -bash: echo: write error: Device or resource busy
That's because struct blk_trace is attached to struct request_queue, sda1 and sda2 share the same rq:
# echo 1 > /sys/block/sda/sda1/trace/enable # cat /sys/block/sda/sda1/trace/enable 1 # cat /sys/block/sda/sda2/trace/enable 1 > [root@aldebaran ~]# > > Nor did i see any "trace all block IO in the system" kind of > functionality in blktrace. (or maybe there's one that i missed?) >
Right, and the only way to do this is 'blktrace sda sdb sdc ...'
|  |