Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 375255
b: refs/heads/master
c: 058ce5c
h: refs/heads/master
i:
  375253: 444a042
  375251: 6841ddf
  375247: eec122f
v: v3
  • Loading branch information
Alasdair G Kergon committed May 10, 2013
1 parent 17fa2e7 commit 7661d79
Show file tree
Hide file tree
Showing 2 changed files with 16 additions and 1 deletion.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 88a488f6243c98b38ac5191d4255e09d3b1c6455
refs/heads/master: 058ce5ca8155a4c8eeac9b9e8a70e6664996337b
15 changes: 15 additions & 0 deletions trunk/include/linux/device-mapper.h
Original file line number Diff line number Diff line change
Expand Up @@ -79,11 +79,26 @@ typedef int (*dm_ioctl_fn) (struct dm_target *ti, unsigned int cmd,
typedef int (*dm_merge_fn) (struct dm_target *ti, struct bvec_merge_data *bvm,
struct bio_vec *biovec, int max_size);

/*
* These iteration functions are typically used to check (and combine)
* properties of underlying devices.
* E.g. Does at least one underlying device support flush?
* Does any underlying device not support WRITE_SAME?
*
* The callout function is called once for each contiguous section of
* an underlying device. State can be maintained in *data.
* Return non-zero to stop iterating through any further devices.
*/
typedef int (*iterate_devices_callout_fn) (struct dm_target *ti,
struct dm_dev *dev,
sector_t start, sector_t len,
void *data);

/*
* This function must iterate through each section of device used by the
* target until it encounters a non-zero return code, which it then returns.
* Returns zero if no callout returned non-zero.
*/
typedef int (*dm_iterate_devices_fn) (struct dm_target *ti,
iterate_devices_callout_fn fn,
void *data);
Expand Down

0 comments on commit 7661d79

Please sign in to comment.