git://ftp.safe.ca
/
safe
/
jmp
/
linux-2.6
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
md: remove sparse warning:symbol XXX was not declared.
[safe/jmp/linux-2.6]
/
drivers
/
md
/
dm-linear.c
diff --git
a/drivers/md/dm-linear.c
b/drivers/md/dm-linear.c
index
79fb53e
..
82f7d6e
100644
(file)
--- a/
drivers/md/dm-linear.c
+++ b/
drivers/md/dm-linear.c
@@
-53,6
+53,7
@@
static int linear_ctr(struct dm_target *ti, unsigned int argc, char **argv)
goto bad;
}
goto bad;
}
+ ti->num_flush_requests = 1;
ti->private = lc;
return 0;
ti->private = lc;
return 0;
@@
-81,7
+82,8
@@
static void linear_map_bio(struct dm_target *ti, struct bio *bio)
struct linear_c *lc = ti->private;
bio->bi_bdev = lc->dev->bdev;
struct linear_c *lc = ti->private;
bio->bi_bdev = lc->dev->bdev;
- bio->bi_sector = linear_map_sector(ti, bio->bi_sector);
+ if (bio_sectors(bio))
+ bio->bi_sector = linear_map_sector(ti, bio->bi_sector);
}
static int linear_map(struct dm_target *ti, struct bio *bio,
}
static int linear_map(struct dm_target *ti, struct bio *bio,
@@
-132,9
+134,17
@@
static int linear_merge(struct dm_target *ti, struct bvec_merge_data *bvm,
return min(max_size, q->merge_bvec_fn(q, bvm, biovec));
}
return min(max_size, q->merge_bvec_fn(q, bvm, biovec));
}
+static int linear_iterate_devices(struct dm_target *ti,
+ iterate_devices_callout_fn fn, void *data)
+{
+ struct linear_c *lc = ti->private;
+
+ return fn(ti, lc->dev, lc->start, ti->len, data);
+}
+
static struct target_type linear_target = {
.name = "linear",
static struct target_type linear_target = {
.name = "linear",
- .version
= {1, 0, 3
},
+ .version
= {1, 1, 0
},
.module = THIS_MODULE,
.ctr = linear_ctr,
.dtr = linear_dtr,
.module = THIS_MODULE,
.ctr = linear_ctr,
.dtr = linear_dtr,
@@
-142,6
+152,7
@@
static struct target_type linear_target = {
.status = linear_status,
.ioctl = linear_ioctl,
.merge = linear_merge,
.status = linear_status,
.ioctl = linear_ioctl,
.merge = linear_merge,
+ .iterate_devices = linear_iterate_devices,
};
int __init dm_linear_init(void)
};
int __init dm_linear_init(void)