From: Joe Thornber Make sure that a target has a sensible set of default io restrictions. 25-akpm/drivers/md/dm-table.c | 11 +++++++++++ 1 files changed, 11 insertions(+) diff -puN drivers/md/dm-table.c~dm-4-set-io-restriction-defaults drivers/md/dm-table.c --- 25/drivers/md/dm-table.c~dm-4-set-io-restriction-defaults Tue Nov 25 12:53:47 2003 +++ 25-akpm/drivers/md/dm-table.c Tue Nov 25 12:53:47 2003 @@ -630,6 +630,16 @@ static int split_args(int *argc, char ** return 0; } +static void set_default_limits(struct io_restrictions *rs) +{ + rs->max_sectors = MAX_SECTORS; + rs->max_phys_segments = MAX_PHYS_SEGMENTS; + rs->max_hw_segments = MAX_HW_SEGMENTS; + rs->hardsect_size = 1 << SECTOR_SHIFT; + rs->max_segment_size = MAX_SEGMENT_SIZE; + rs->seg_boundary_mask = -1; +} + int dm_table_add_target(struct dm_table *t, const char *type, sector_t start, sector_t len, char *params) { @@ -642,6 +652,7 @@ int dm_table_add_target(struct dm_table tgt = t->targets + t->num_targets; memset(tgt, 0, sizeof(*tgt)); + set_default_limits(&tgt->limits); tgt->type = dm_get_target_type(type); if (!tgt->type) { _