diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-10 12:02:50 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2013-05-10 12:02:50 -0400 |
commit | ec6671589a07d9b27ff5832138ff435b3a3c9b09 (patch) | |
tree | 4866cfd09e45a492b5b96380818fb5d1e3a4fac0 /include | |
parent | f755407dd19072b7d20719bc5454caed9ab41cc1 (diff) | |
parent | 2f14f4b51ed34fe2b704af8df178f5cd8c81f65e (diff) |
Merge tag 'dm-3.10-changes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm
Pull device-mapper updates from Alasdair Kergon:
"Allow devices that hold metadata for the device-mapper thin
provisioning target to be extended easily; allow WRITE SAME on
multipath devices; an assortment of little fixes and clean-ups."
* tag 'dm-3.10-changes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm: (21 commits)
dm cache: set config value
dm cache: move config fns
dm thin: generate event when metadata threshold passed
dm persistent metadata: add space map threshold callback
dm persistent data: add threshold callback to space map
dm thin: detect metadata device resizing
dm persistent data: support space map resizing
dm thin: open dev read only when possible
dm thin: refactor data dev resize
dm cache: replace memcpy with struct assignment
dm cache: fix typos in comments
dm cache policy: fix description of lookup fn
dm: document iterate_devices
dm persistent data: fix error message typos
dm cache: tune migration throttling
dm mpath: enable WRITE SAME support
dm table: fix write same support
dm bufio: avoid a possible __vmalloc deadlock
dm snapshot: fix error return code in snapshot_ctr
dm cache: fix error return code in cache_create
...
Diffstat (limited to 'include')
-rw-r--r-- | include/linux/device-mapper.h | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/include/linux/device-mapper.h b/include/linux/device-mapper.h index 1e483fa7afb4..3cd32478f2fd 100644 --- a/include/linux/device-mapper.h +++ b/include/linux/device-mapper.h | |||
@@ -79,11 +79,26 @@ typedef int (*dm_ioctl_fn) (struct dm_target *ti, unsigned int cmd, | |||
79 | typedef int (*dm_merge_fn) (struct dm_target *ti, struct bvec_merge_data *bvm, | 79 | typedef int (*dm_merge_fn) (struct dm_target *ti, struct bvec_merge_data *bvm, |
80 | struct bio_vec *biovec, int max_size); | 80 | struct bio_vec *biovec, int max_size); |
81 | 81 | ||
82 | /* | ||
83 | * These iteration functions are typically used to check (and combine) | ||
84 | * properties of underlying devices. | ||
85 | * E.g. Does at least one underlying device support flush? | ||
86 | * Does any underlying device not support WRITE_SAME? | ||
87 | * | ||
88 | * The callout function is called once for each contiguous section of | ||
89 | * an underlying device. State can be maintained in *data. | ||
90 | * Return non-zero to stop iterating through any further devices. | ||
91 | */ | ||
82 | typedef int (*iterate_devices_callout_fn) (struct dm_target *ti, | 92 | typedef int (*iterate_devices_callout_fn) (struct dm_target *ti, |
83 | struct dm_dev *dev, | 93 | struct dm_dev *dev, |
84 | sector_t start, sector_t len, | 94 | sector_t start, sector_t len, |
85 | void *data); | 95 | void *data); |
86 | 96 | ||
97 | /* | ||
98 | * This function must iterate through each section of device used by the | ||
99 | * target until it encounters a non-zero return code, which it then returns. | ||
100 | * Returns zero if no callout returned non-zero. | ||
101 | */ | ||
87 | typedef int (*dm_iterate_devices_fn) (struct dm_target *ti, | 102 | typedef int (*dm_iterate_devices_fn) (struct dm_target *ti, |
88 | iterate_devices_callout_fn fn, | 103 | iterate_devices_callout_fn fn, |
89 | void *data); | 104 | void *data); |