diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 16:33:29 -0400 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-12 16:33:29 -0400 |
| commit | 0e04c641b199435f3779454055f6a7de258ecdfc (patch) | |
| tree | 9b79da0c52240bf4b96270ac12356ad75da6f739 /include/linux | |
| parent | 7550cfab3d4053b54f16e2fe337affde71d1eb51 (diff) | |
| parent | 09869de57ed2728ae3c619803932a86cb0e2c4f8 (diff) | |
Merge tag 'dm-3.16-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm
Pull device mapper updates from Mike Snitzer:
"This pull request is later than I'd have liked because I was waiting
for some performance data to help finally justify sending the
long-standing dm-crypt cpu scalability improvements upstream.
Unfortunately we came up short, so those dm-crypt changes will
continue to wait, but it seems we're not far off.
. Add dm_accept_partial_bio interface to DM core to allow DM targets
to only process a portion of a bio, the remainder being sent in the
next bio. This enables the old dm snapshot-origin target to only
split write bios on chunk boundaries, read bios are now sent to the
origin device unchanged.
. Add DM core support for disabling WRITE SAME if the underlying SCSI
layer disables it due to command failure.
. Reduce lock contention in DM's bio-prison.
. A few small cleanups and fixes to dm-thin and dm-era"
* tag 'dm-3.16-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/device-mapper/linux-dm:
dm thin: update discard_granularity to reflect the thin-pool blocksize
dm bio prison: implement per bucket locking in the dm_bio_prison hash table
dm: remove symbol export for dm_set_device_limits
dm: disable WRITE SAME if it fails
dm era: check for a non-NULL metadata object before closing it
dm thin: return ENOSPC instead of EIO when error_if_no_space enabled
dm thin: cleanup noflush_work to use a proper completion
dm snapshot: do not split read bios sent to snapshot-origin target
dm snapshot: allocate a per-target structure for snapshot-origin target
dm: introduce dm_accept_partial_bio
dm: change sector_count member in clone_info from sector_t to unsigned
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/device-mapper.h | 10 |
1 files changed, 3 insertions, 7 deletions
diff --git a/include/linux/device-mapper.h b/include/linux/device-mapper.h index 63da56ed9796..e1707de043ae 100644 --- a/include/linux/device-mapper.h +++ b/include/linux/device-mapper.h | |||
| @@ -115,12 +115,6 @@ typedef int (*dm_busy_fn) (struct dm_target *ti); | |||
| 115 | 115 | ||
| 116 | void dm_error(const char *message); | 116 | void dm_error(const char *message); |
| 117 | 117 | ||
| 118 | /* | ||
| 119 | * Combine device limits. | ||
| 120 | */ | ||
| 121 | int dm_set_device_limits(struct dm_target *ti, struct dm_dev *dev, | ||
| 122 | sector_t start, sector_t len, void *data); | ||
| 123 | |||
| 124 | struct dm_dev { | 118 | struct dm_dev { |
| 125 | struct block_device *bdev; | 119 | struct block_device *bdev; |
| 126 | fmode_t mode; | 120 | fmode_t mode; |
| @@ -132,7 +126,7 @@ struct dm_dev { | |||
| 132 | * are opened/closed correctly. | 126 | * are opened/closed correctly. |
| 133 | */ | 127 | */ |
| 134 | int dm_get_device(struct dm_target *ti, const char *path, fmode_t mode, | 128 | int dm_get_device(struct dm_target *ti, const char *path, fmode_t mode, |
| 135 | struct dm_dev **result); | 129 | struct dm_dev **result); |
| 136 | void dm_put_device(struct dm_target *ti, struct dm_dev *d); | 130 | void dm_put_device(struct dm_target *ti, struct dm_dev *d); |
| 137 | 131 | ||
| 138 | /* | 132 | /* |
| @@ -291,6 +285,7 @@ struct dm_target_io { | |||
| 291 | struct dm_io *io; | 285 | struct dm_io *io; |
| 292 | struct dm_target *ti; | 286 | struct dm_target *ti; |
| 293 | unsigned target_bio_nr; | 287 | unsigned target_bio_nr; |
| 288 | unsigned *len_ptr; | ||
| 294 | struct bio clone; | 289 | struct bio clone; |
| 295 | }; | 290 | }; |
| 296 | 291 | ||
| @@ -401,6 +396,7 @@ int dm_copy_name_and_uuid(struct mapped_device *md, char *name, char *uuid); | |||
| 401 | struct gendisk *dm_disk(struct mapped_device *md); | 396 | struct gendisk *dm_disk(struct mapped_device *md); |
| 402 | int dm_suspended(struct dm_target *ti); | 397 | int dm_suspended(struct dm_target *ti); |
| 403 | int dm_noflush_suspending(struct dm_target *ti); | 398 | int dm_noflush_suspending(struct dm_target *ti); |
| 399 | void dm_accept_partial_bio(struct bio *bio, unsigned n_sectors); | ||
| 404 | union map_info *dm_get_rq_mapinfo(struct request *rq); | 400 | union map_info *dm_get_rq_mapinfo(struct request *rq); |
| 405 | 401 | ||
| 406 | struct queue_limits *dm_get_queue_limits(struct mapped_device *md); | 402 | struct queue_limits *dm_get_queue_limits(struct mapped_device *md); |
