diff options
author | Mikulas Patocka <mpatocka@redhat.com> | 2015-11-25 16:03:31 -0500 |
---|---|---|
committer | Mike Snitzer <snitzer@redhat.com> | 2015-12-10 10:38:56 -0500 |
commit | fe3265b180d6282648f03bc6ac3958c733df01c2 (patch) | |
tree | acf20a7a1efed26556b258a6f6339167bff59202 | |
parent | 086fbbbda9b743b149b0294e0feec257e2c311d5 (diff) |
dm: don't save and restore bi_private
Device mapper used the field bi_private to point to dm_target_io. However,
since kernel 3.15, the bi_private field is unused, and so the targets do
not need to save and restore this field.
This patch removes code that saves and restores bi_private from dm-cache,
dm-snapshot and dm-verity.
Signed-off-by: Mikulas Patocka <mpatocka@redhat.com>
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
-rw-r--r-- | drivers/md/dm-cache-target.c | 3 | ||||
-rw-r--r-- | drivers/md/dm-snap.c | 6 | ||||
-rw-r--r-- | drivers/md/dm-verity.c | 5 |
3 files changed, 2 insertions, 12 deletions
diff --git a/drivers/md/dm-cache-target.c b/drivers/md/dm-cache-target.c index 2fd4c8296144..5780accffa30 100644 --- a/drivers/md/dm-cache-target.c +++ b/drivers/md/dm-cache-target.c | |||
@@ -118,14 +118,12 @@ static void iot_io_end(struct io_tracker *iot, sector_t len) | |||
118 | */ | 118 | */ |
119 | struct dm_hook_info { | 119 | struct dm_hook_info { |
120 | bio_end_io_t *bi_end_io; | 120 | bio_end_io_t *bi_end_io; |
121 | void *bi_private; | ||
122 | }; | 121 | }; |
123 | 122 | ||
124 | static void dm_hook_bio(struct dm_hook_info *h, struct bio *bio, | 123 | static void dm_hook_bio(struct dm_hook_info *h, struct bio *bio, |
125 | bio_end_io_t *bi_end_io, void *bi_private) | 124 | bio_end_io_t *bi_end_io, void *bi_private) |
126 | { | 125 | { |
127 | h->bi_end_io = bio->bi_end_io; | 126 | h->bi_end_io = bio->bi_end_io; |
128 | h->bi_private = bio->bi_private; | ||
129 | 127 | ||
130 | bio->bi_end_io = bi_end_io; | 128 | bio->bi_end_io = bi_end_io; |
131 | bio->bi_private = bi_private; | 129 | bio->bi_private = bi_private; |
@@ -134,7 +132,6 @@ static void dm_hook_bio(struct dm_hook_info *h, struct bio *bio, | |||
134 | static void dm_unhook_bio(struct dm_hook_info *h, struct bio *bio) | 132 | static void dm_unhook_bio(struct dm_hook_info *h, struct bio *bio) |
135 | { | 133 | { |
136 | bio->bi_end_io = h->bi_end_io; | 134 | bio->bi_end_io = h->bi_end_io; |
137 | bio->bi_private = h->bi_private; | ||
138 | } | 135 | } |
139 | 136 | ||
140 | /*----------------------------------------------------------------*/ | 137 | /*----------------------------------------------------------------*/ |
diff --git a/drivers/md/dm-snap.c b/drivers/md/dm-snap.c index c06b74e91cd6..f68d0ae5b198 100644 --- a/drivers/md/dm-snap.c +++ b/drivers/md/dm-snap.c | |||
@@ -207,7 +207,6 @@ struct dm_snap_pending_exception { | |||
207 | */ | 207 | */ |
208 | struct bio *full_bio; | 208 | struct bio *full_bio; |
209 | bio_end_io_t *full_bio_end_io; | 209 | bio_end_io_t *full_bio_end_io; |
210 | void *full_bio_private; | ||
211 | }; | 210 | }; |
212 | 211 | ||
213 | /* | 212 | /* |
@@ -1485,10 +1484,8 @@ out: | |||
1485 | snapshot_bios = bio_list_get(&pe->snapshot_bios); | 1484 | snapshot_bios = bio_list_get(&pe->snapshot_bios); |
1486 | origin_bios = bio_list_get(&pe->origin_bios); | 1485 | origin_bios = bio_list_get(&pe->origin_bios); |
1487 | full_bio = pe->full_bio; | 1486 | full_bio = pe->full_bio; |
1488 | if (full_bio) { | 1487 | if (full_bio) |
1489 | full_bio->bi_end_io = pe->full_bio_end_io; | 1488 | full_bio->bi_end_io = pe->full_bio_end_io; |
1490 | full_bio->bi_private = pe->full_bio_private; | ||
1491 | } | ||
1492 | increment_pending_exceptions_done_count(); | 1489 | increment_pending_exceptions_done_count(); |
1493 | 1490 | ||
1494 | up_write(&s->lock); | 1491 | up_write(&s->lock); |
@@ -1605,7 +1602,6 @@ static void start_full_bio(struct dm_snap_pending_exception *pe, | |||
1605 | 1602 | ||
1606 | pe->full_bio = bio; | 1603 | pe->full_bio = bio; |
1607 | pe->full_bio_end_io = bio->bi_end_io; | 1604 | pe->full_bio_end_io = bio->bi_end_io; |
1608 | pe->full_bio_private = bio->bi_private; | ||
1609 | 1605 | ||
1610 | callback_data = dm_kcopyd_prepare_callback(s->kcopyd_client, | 1606 | callback_data = dm_kcopyd_prepare_callback(s->kcopyd_client, |
1611 | copy_callback, pe); | 1607 | copy_callback, pe); |
diff --git a/drivers/md/dm-verity.c b/drivers/md/dm-verity.c index ccf41886ebcf..9e8891507c1c 100644 --- a/drivers/md/dm-verity.c +++ b/drivers/md/dm-verity.c | |||
@@ -83,9 +83,8 @@ struct dm_verity { | |||
83 | struct dm_verity_io { | 83 | struct dm_verity_io { |
84 | struct dm_verity *v; | 84 | struct dm_verity *v; |
85 | 85 | ||
86 | /* original values of bio->bi_end_io and bio->bi_private */ | 86 | /* original value of bio->bi_end_io */ |
87 | bio_end_io_t *orig_bi_end_io; | 87 | bio_end_io_t *orig_bi_end_io; |
88 | void *orig_bi_private; | ||
89 | 88 | ||
90 | sector_t block; | 89 | sector_t block; |
91 | unsigned n_blocks; | 90 | unsigned n_blocks; |
@@ -453,7 +452,6 @@ static void verity_finish_io(struct dm_verity_io *io, int error) | |||
453 | struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_bio_data_size); | 452 | struct bio *bio = dm_bio_from_per_bio_data(io, v->ti->per_bio_data_size); |
454 | 453 | ||
455 | bio->bi_end_io = io->orig_bi_end_io; | 454 | bio->bi_end_io = io->orig_bi_end_io; |
456 | bio->bi_private = io->orig_bi_private; | ||
457 | bio->bi_error = error; | 455 | bio->bi_error = error; |
458 | 456 | ||
459 | bio_endio(bio); | 457 | bio_endio(bio); |
@@ -566,7 +564,6 @@ static int verity_map(struct dm_target *ti, struct bio *bio) | |||
566 | io = dm_per_bio_data(bio, ti->per_bio_data_size); | 564 | io = dm_per_bio_data(bio, ti->per_bio_data_size); |
567 | io->v = v; | 565 | io->v = v; |
568 | io->orig_bi_end_io = bio->bi_end_io; | 566 | io->orig_bi_end_io = bio->bi_end_io; |
569 | io->orig_bi_private = bio->bi_private; | ||
570 | io->block = bio->bi_iter.bi_sector >> (v->data_dev_block_bits - SECTOR_SHIFT); | 567 | io->block = bio->bi_iter.bi_sector >> (v->data_dev_block_bits - SECTOR_SHIFT); |
571 | io->n_blocks = bio->bi_iter.bi_size >> v->data_dev_block_bits; | 568 | io->n_blocks = bio->bi_iter.bi_size >> v->data_dev_block_bits; |
572 | 569 | ||