dm-delay.c (df9b42963f2d010ae3163a894ce22cf6b27cd344) dm-delay.c (7de3ee57da4b717050e79c9313a9bf66ccc72519)
1/*
2 * Copyright (C) 2005-2007 Red Hat GmbH
3 *
4 * A target that delays reads and/or writes and can send
5 * them to different devices.
6 *
7 * This file is released under the GPL.
8 */

--- 260 unchanged lines hidden (view full) ---

269
270static void delay_resume(struct dm_target *ti)
271{
272 struct delay_c *dc = ti->private;
273
274 atomic_set(&dc->may_delay, 1);
275}
276
1/*
2 * Copyright (C) 2005-2007 Red Hat GmbH
3 *
4 * A target that delays reads and/or writes and can send
5 * them to different devices.
6 *
7 * This file is released under the GPL.
8 */

--- 260 unchanged lines hidden (view full) ---

269
270static void delay_resume(struct dm_target *ti)
271{
272 struct delay_c *dc = ti->private;
273
274 atomic_set(&dc->may_delay, 1);
275}
276
277static int delay_map(struct dm_target *ti, struct bio *bio,
278 union map_info *map_context)
277static int delay_map(struct dm_target *ti, struct bio *bio)
279{
280 struct delay_c *dc = ti->private;
281
282 if ((bio_data_dir(bio) == WRITE) && (dc->dev_write)) {
283 bio->bi_bdev = dc->dev_write->bdev;
284 if (bio_sectors(bio))
285 bio->bi_sector = dc->start_write +
286 dm_target_offset(ti, bio->bi_sector);

--- 46 unchanged lines hidden (view full) ---

333 ret = fn(ti, dc->dev_write, dc->start_write, ti->len, data);
334
335out:
336 return ret;
337}
338
339static struct target_type delay_target = {
340 .name = "delay",
278{
279 struct delay_c *dc = ti->private;
280
281 if ((bio_data_dir(bio) == WRITE) && (dc->dev_write)) {
282 bio->bi_bdev = dc->dev_write->bdev;
283 if (bio_sectors(bio))
284 bio->bi_sector = dc->start_write +
285 dm_target_offset(ti, bio->bi_sector);

--- 46 unchanged lines hidden (view full) ---

332 ret = fn(ti, dc->dev_write, dc->start_write, ti->len, data);
333
334out:
335 return ret;
336}
337
338static struct target_type delay_target = {
339 .name = "delay",
341 .version = {1, 1, 0},
340 .version = {1, 2, 0},
342 .module = THIS_MODULE,
343 .ctr = delay_ctr,
344 .dtr = delay_dtr,
345 .map = delay_map,
346 .presuspend = delay_presuspend,
347 .resume = delay_resume,
348 .status = delay_status,
349 .iterate_devices = delay_iterate_devices,

--- 48 unchanged lines hidden ---
341 .module = THIS_MODULE,
342 .ctr = delay_ctr,
343 .dtr = delay_dtr,
344 .map = delay_map,
345 .presuspend = delay_presuspend,
346 .resume = delay_resume,
347 .status = delay_status,
348 .iterate_devices = delay_iterate_devices,

--- 48 unchanged lines hidden ---