kernel-fxtec-pro1x/drivers/md
Kiyoshi Ueda 02ab823fd1 dm mpath: add start_io and nr_bytes to path selectors
This patch makes two additions to the dm path selector interface for
dynamic load balancers:
  o a new hook, start_io()
  o a new parameter 'nr_bytes' to select_path()/start_io()/end_io()
    to pass the size of the I/O

start_io() is called when a target driver actually submits I/O
to the selected path.
Path selectors can use it to start accounting of the I/O.
(e.g. counting the number of in-flight I/Os.)
The start_io hook is based on the patch posted by Stefan Bader:
https://www.redhat.com/archives/dm-devel/2005-October/msg00050.html

nr_bytes, the size of the I/O, is so path selectors can take the
size of the I/O into account when deciding which path to use.
dm-service-time uses it to estimate service time, for example.
(Added the nr_bytes member to dm_mpath_io instead of using existing
 details.bi_size, since request-based dm patch deletes it.)

Signed-off-by: Stefan Bader <stefan.bader@canonical.com>
Signed-off-by: Kiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: Jun'ichi Nomura <j-nomura@ce.jp.nec.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
2009-06-22 10:12:27 +01:00
..
raid6test md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
.gitignore gitignore: misc files 2006-01-01 22:21:50 +01:00
bitmap.c Merge branch 'for-2.6.31' of git://git.kernel.dk/linux-2.6-block 2009-06-11 11:10:35 -07:00
bitmap.h md: move headers out of include/linux/raid/ 2009-03-31 14:27:03 +11:00
dm-bio-record.h dm: preserve bi_io_vec when resubmitting bios 2009-04-02 19:55:23 +01:00
dm-crypt.c dm crypt: support flush 2009-06-22 10:12:23 +01:00
dm-delay.c dm delay: support barriers 2009-06-22 10:12:23 +01:00
dm-exception-store.c dm exception store: fix exstore lookup to be case insensitive 2009-06-22 10:12:15 +01:00
dm-exception-store.h dm: use i_size_read 2009-06-22 10:12:14 +01:00
dm-io.c dm io: retry after barrier error 2009-06-22 10:12:26 +01:00
dm-ioctl.c Driver Core: misc: add nodename support for misc devices. 2009-06-15 21:30:25 -07:00
dm-kcopyd.c dm kcopyd: fix callback race 2009-04-09 00:27:17 +01:00
dm-linear.c dm: linear support flush 2009-06-22 10:12:22 +01:00
dm-log.c dm: use i_size_read 2009-06-22 10:12:14 +01:00
dm-mpath.c dm mpath: add start_io and nr_bytes to path selectors 2009-06-22 10:12:27 +01:00
dm-mpath.h dm mpath: remove is_active from struct dm_path 2008-10-10 13:36:58 +01:00
dm-path-selector.c dm: path selector use module refcount directly 2009-04-02 19:55:27 +01:00
dm-path-selector.h dm mpath: add start_io and nr_bytes to path selectors 2009-06-22 10:12:27 +01:00
dm-raid1.c block: move bio list helpers into bio.h 2009-04-15 08:28:09 +02:00
dm-region-hash.c dm raid1: keep retrying alloc if mempool_alloc failed 2009-06-22 10:12:13 +01:00
dm-round-robin.c dm mpath: add start_io and nr_bytes to path selectors 2009-06-22 10:12:27 +01:00
dm-snap-persistent.c dm snapshot: use barrier when writing exception store 2009-06-22 10:12:26 +01:00
dm-snap-transient.c dm snapshot: move status to exception store 2009-04-02 19:55:35 +01:00
dm-snap.c dm snapshot: support barriers 2009-06-22 10:12:25 +01:00
dm-stripe.c dm: stripe support flush 2009-06-22 10:12:22 +01:00
dm-sysfs.c dm: add name and uuid to sysfs 2009-01-06 03:05:12 +00:00
dm-table.c dm: use i_size_read 2009-06-22 10:12:14 +01:00
dm-target.c dm target: remove struct tt_internal 2009-04-02 19:55:28 +01:00
dm-uevent.c md: replace remaining __FUNCTION__ occurrences 2008-04-28 08:58:42 -07:00
dm-uevent.h dm: uevent generate events 2007-10-20 02:01:26 +01:00
dm-zero.c dm: consolidate target deregistration error handling 2009-01-06 03:04:58 +00:00
dm.c dm: send empty barriers to targets in dm_flush 2009-06-22 10:12:21 +01:00
dm.h dm: remove limited barrier support 2009-04-09 00:27:13 +01:00
faulty.c md: Move check for bitmap presence to personality code. 2009-06-18 08:49:23 +10:00
Kconfig md: remove CONFIG_MD_RAID_RESHAPE config option. 2009-03-31 15:27:05 +11:00
linear.c md/linear: use call_rcu to free obsolete 'conf' structures. 2009-06-18 08:49:42 +10:00
linear.h md/linear: use call_rcu to free obsolete 'conf' structures. 2009-06-18 08:49:42 +10:00
Makefile md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
md.c md: Move check for bitmap presence to personality code. 2009-06-18 08:49:23 +10:00
md.h md: Move check for bitmap presence to personality code. 2009-06-18 08:49:23 +10:00
mktables.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
multipath.c md: Move check for bitmap presence to personality code. 2009-06-18 08:49:23 +10:00
multipath.h md: remove mddev_to_conf "helper" macro 2009-06-16 16:54:21 +10:00
raid0.c md: Move check for bitmap presence to personality code. 2009-06-18 08:49:23 +10:00
raid0.h md: remove mddev_to_conf "helper" macro 2009-06-16 16:54:21 +10:00
raid1.c md: Push down reconstruction log message to personality code. 2009-06-18 08:48:06 +10:00
raid1.h md: remove mddev_to_conf "helper" macro 2009-06-16 16:54:21 +10:00
raid5.c md/raid5: correctly update sync_completed when we reach max_resync 2009-06-18 09:14:12 +10:00
raid5.h md: convert conf->chunk_size and conf->prev_chunk to sectors. 2009-06-18 08:45:55 +10:00
raid6algos.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6altivec.uc md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6int.uc md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6mmx.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6recov.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6sse1.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6sse2.c md/raid6: move raid6 data processing to raid6_pq.ko 2009-03-31 15:09:39 +11:00
raid6x86.h md: fix typo in FSF address 2009-03-31 14:57:37 +11:00
raid10.c md: Push down reconstruction log message to personality code. 2009-06-18 08:48:06 +10:00
raid10.h md: remove mddev_to_conf "helper" macro 2009-06-16 16:54:21 +10:00
unroll.pl