Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d2a7ad29 authored by Kiyoshi Ueda's avatar Kiyoshi Ueda Committed by Linus Torvalds
Browse files

[PATCH] dm: map and endio symbolic return codes



Update existing targets to use the new symbols for return values from target
map and end_io functions.

There is no effect on behaviour.

Test results:
Done build test without errors.

Signed-off-by: default avatarKiyoshi Ueda <k-ueda@ct.jp.nec.com>
Signed-off-by: default avatarJun'ichi Nomura <j-nomura@ce.jp.nec.com>
Signed-off-by: default avatarAlasdair G Kergon <agk@redhat.com>
Cc: dm-devel@redhat.com
Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@osdl.org>
parent 45cbcd79
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -962,7 +962,7 @@ static int crypt_map(struct dm_target *ti, struct bio *bio,
	atomic_set(&io->pending, 0);
	kcryptd_queue_io(io);

	return 0;
	return DM_MAPIO_SUBMITTED;
}

static int crypt_status(struct dm_target *ti, status_type_t type,
+1 −1
Original line number Diff line number Diff line
@@ -77,7 +77,7 @@ static int linear_map(struct dm_target *ti, struct bio *bio,
	bio->bi_bdev = lc->dev->bdev;
	bio->bi_sector = lc->start + (bio->bi_sector - ti->begin);

	return 1;
	return DM_MAPIO_REMAPPED;
}

static int linear_status(struct dm_target *ti, status_type_t type,
+5 −5
Original line number Diff line number Diff line
@@ -285,7 +285,7 @@ static void __choose_pgpath(struct multipath *m)
static int map_io(struct multipath *m, struct bio *bio, struct mpath_io *mpio,
		  unsigned was_queued)
{
	int r = 1;
	int r = DM_MAPIO_REMAPPED;
	unsigned long flags;
	struct pgpath *pgpath;

@@ -310,7 +310,7 @@ static int map_io(struct multipath *m, struct bio *bio, struct mpath_io *mpio,
		    !m->queue_io)
			queue_work(kmultipathd, &m->process_queued_ios);
		pgpath = NULL;
		r = 0;
		r = DM_MAPIO_SUBMITTED;
	} else if (!pgpath)
		r = -EIO;		/* Failed */
	else
@@ -372,7 +372,7 @@ static void dispatch_queued_ios(struct multipath *m)
		r = map_io(m, bio, mpio, 1);
		if (r < 0)
			bio_endio(bio, bio->bi_size, r);
		else if (r == 1)
		else if (r == DM_MAPIO_REMAPPED)
			generic_make_request(bio);

		bio = next;
@@ -1042,7 +1042,7 @@ static int do_end_io(struct multipath *m, struct bio *bio,
		queue_work(kmultipathd, &m->process_queued_ios);
	spin_unlock_irqrestore(&m->lock, flags);

	return 1;	/* io not complete */
	return DM_ENDIO_INCOMPLETE;	/* io not complete */
}

static int multipath_end_io(struct dm_target *ti, struct bio *bio,
@@ -1060,7 +1060,7 @@ static int multipath_end_io(struct dm_target *ti, struct bio *bio,
		if (ps->type->end_io)
			ps->type->end_io(ps, &pgpath->path);
	}
	if (r <= 0)
	if (r != DM_ENDIO_INCOMPLETE)
		mempool_free(mpio, m->mpio_pool);

	return r;
+4 −4
Original line number Diff line number Diff line
@@ -1137,7 +1137,7 @@ static int mirror_map(struct dm_target *ti, struct bio *bio,

	if (rw == WRITE) {
		queue_bio(ms, bio, rw);
		return 0;
		return DM_MAPIO_SUBMITTED;
	}

	r = ms->rh.log->type->in_sync(ms->rh.log,
@@ -1146,7 +1146,7 @@ static int mirror_map(struct dm_target *ti, struct bio *bio,
		return r;

	if (r == -EWOULDBLOCK)	/* FIXME: ugly */
		r = 0;
		r = DM_MAPIO_SUBMITTED;

	/*
	 * We don't want to fast track a recovery just for a read
@@ -1159,7 +1159,7 @@ static int mirror_map(struct dm_target *ti, struct bio *bio,
	if (!r) {
		/* Pass this io over to the daemon */
		queue_bio(ms, bio, rw);
		return 0;
		return DM_MAPIO_SUBMITTED;
	}

	m = choose_mirror(ms, bio->bi_sector);
@@ -1167,7 +1167,7 @@ static int mirror_map(struct dm_target *ti, struct bio *bio,
		return -EIO;

	map_bio(ms, m, bio);
	return 1;
	return DM_MAPIO_REMAPPED;
}

static int mirror_end_io(struct dm_target *ti, struct bio *bio,
+6 −6
Original line number Diff line number Diff line
@@ -868,7 +868,7 @@ static int snapshot_map(struct dm_target *ti, struct bio *bio,
{
	struct exception *e;
	struct dm_snapshot *s = (struct dm_snapshot *) ti->private;
	int r = 1;
	int r = DM_MAPIO_REMAPPED;
	chunk_t chunk;
	struct pending_exception *pe = NULL;

@@ -914,7 +914,7 @@ static int snapshot_map(struct dm_target *ti, struct bio *bio,
		remap_exception(s, &pe->e, bio);
		bio_list_add(&pe->snapshot_bios, bio);

		r = 0;
		r = DM_MAPIO_SUBMITTED;

		if (!pe->started) {
			/* this is protected by snap->lock */
@@ -992,7 +992,7 @@ static int snapshot_status(struct dm_target *ti, status_type_t type,
 *---------------------------------------------------------------*/
static int __origin_write(struct list_head *snapshots, struct bio *bio)
{
	int r = 1, first = 0;
	int r = DM_MAPIO_REMAPPED, first = 0;
	struct dm_snapshot *snap;
	struct exception *e;
	struct pending_exception *pe, *next_pe, *primary_pe = NULL;
@@ -1050,7 +1050,7 @@ static int __origin_write(struct list_head *snapshots, struct bio *bio)

			bio_list_add(&primary_pe->origin_bios, bio);

			r = 0;
			r = DM_MAPIO_SUBMITTED;
		}

		if (!pe->primary_pe) {
@@ -1099,7 +1099,7 @@ static int __origin_write(struct list_head *snapshots, struct bio *bio)
static int do_origin(struct dm_dev *origin, struct bio *bio)
{
	struct origin *o;
	int r = 1;
	int r = DM_MAPIO_REMAPPED;

	down_read(&_origins_lock);
	o = __lookup_origin(origin->bdev);
@@ -1156,7 +1156,7 @@ static int origin_map(struct dm_target *ti, struct bio *bio,
		return -EOPNOTSUPP;

	/* Only tell snapshots if this is a write */
	return (bio_rw(bio) == WRITE) ? do_origin(dev, bio) : 1;
	return (bio_rw(bio) == WRITE) ? do_origin(dev, bio) : DM_MAPIO_REMAPPED;
}

#define min_not_zero(l, r) (l == 0) ? r : ((r == 0) ? l : min(l, r))
Loading