md: add block tracing for bio_remapping
authorNeilBrown <neilb@suse.com>
Fri, 18 Nov 2016 02:22:04 +0000 (13:22 +1100)
committerShaohua Li <shli@fb.com>
Fri, 18 Nov 2016 17:32:50 +0000 (09:32 -0800)
commit109e37653033a5fcd3bf8cab0ed6a7ff433f758a
tree32abb5a663ded00ebe7bddbfb398ec617a9cb2dc
parent354b445b5f84f72e64cef9ffe175548e84c1a874
md: add block tracing for bio_remapping

The block tracing infrastructure (accessed with blktrace/blkparse)
supports the tracing of mapping bios from one device to another.
This is currently used when a bio in a partition is mapped to the
whole device, when bios are mapped by dm, and for mapping in md/raid5.
Other md personalities do not include this tracing yet, so add it.

When a read-error is detected we redirect the request to a different device.
This could justifiably be seen as a new mapping for the originial bio,
or a secondary mapping for the bio that errors.  This patch uses
the second option.

When md is used under dm-raid, the mappings are not traced as we do
not have access to the block device number of the parent.

Signed-off-by: NeilBrown <neilb@suse.com>
Signed-off-by: Shaohua Li <shli@fb.com>
drivers/md/linear.c
drivers/md/raid0.c
drivers/md/raid1.c
drivers/md/raid10.c