aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/md
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/md')
-rw-r--r--drivers/md/raid0.c12
-rw-r--r--drivers/md/raid0.h1
2 files changed, 0 insertions, 13 deletions
diff --git a/drivers/md/raid0.c b/drivers/md/raid0.c
index 1afdfd120bba..d4c9c5d5d7f5 100644
--- a/drivers/md/raid0.c
+++ b/drivers/md/raid0.c
@@ -326,22 +326,14 @@ static int raid0_run (mddev_t *mddev)
326 nb_zone = s + round; 326 nb_zone = s + round;
327 } 327 }
328 printk(KERN_INFO "raid0 : nb_zone is %d.\n", nb_zone); 328 printk(KERN_INFO "raid0 : nb_zone is %d.\n", nb_zone);
329
330 printk(KERN_INFO "raid0 : Allocating %zu bytes for hash.\n",
331 nb_zone*sizeof(struct strip_zone*));
332 conf->hash_table = kmalloc (sizeof (struct strip_zone *)*nb_zone, GFP_KERNEL);
333 if (!conf->hash_table)
334 goto out_free_conf;
335 sectors = conf->strip_zone[cur].sectors; 329 sectors = conf->strip_zone[cur].sectors;
336 330
337 conf->hash_table[0] = conf->strip_zone + cur;
338 for (i=1; i< nb_zone; i++) { 331 for (i=1; i< nb_zone; i++) {
339 while (sectors <= conf->spacing) { 332 while (sectors <= conf->spacing) {
340 cur++; 333 cur++;
341 sectors += conf->strip_zone[cur].sectors; 334 sectors += conf->strip_zone[cur].sectors;
342 } 335 }
343 sectors -= conf->spacing; 336 sectors -= conf->spacing;
344 conf->hash_table[i] = conf->strip_zone + cur;
345 } 337 }
346 if (conf->sector_shift) { 338 if (conf->sector_shift) {
347 conf->spacing >>= conf->sector_shift; 339 conf->spacing >>= conf->sector_shift;
@@ -384,8 +376,6 @@ static int raid0_stop (mddev_t *mddev)
384 raid0_conf_t *conf = mddev_to_conf(mddev); 376 raid0_conf_t *conf = mddev_to_conf(mddev);
385 377
386 blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/ 378 blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/
387 kfree(conf->hash_table);
388 conf->hash_table = NULL;
389 kfree(conf->strip_zone); 379 kfree(conf->strip_zone);
390 conf->strip_zone = NULL; 380 conf->strip_zone = NULL;
391 kfree(conf); 381 kfree(conf);
@@ -494,8 +484,6 @@ static void raid0_status (struct seq_file *seq, mddev_t *mddev)
494 h = 0; 484 h = 0;
495 for (j = 0; j < conf->nr_strip_zones; j++) { 485 for (j = 0; j < conf->nr_strip_zones; j++) {
496 seq_printf(seq, " z%d", j); 486 seq_printf(seq, " z%d", j);
497 if (conf->hash_table[h] == conf->strip_zone+j)
498 seq_printf(seq, "(h%d)", h++);
499 seq_printf(seq, "=["); 487 seq_printf(seq, "=[");
500 for (k = 0; k < conf->strip_zone[j].nb_dev; k++) 488 for (k = 0; k < conf->strip_zone[j].nb_dev; k++)
501 seq_printf(seq, "%s/", bdevname( 489 seq_printf(seq, "%s/", bdevname(
diff --git a/drivers/md/raid0.h b/drivers/md/raid0.h
index 556666fec3a5..a14630a25aa4 100644
--- a/drivers/md/raid0.h
+++ b/drivers/md/raid0.h
@@ -12,7 +12,6 @@ struct strip_zone
12 12
13struct raid0_private_data 13struct raid0_private_data
14{ 14{
15 struct strip_zone **hash_table; /* Table of indexes into strip_zone */
16 struct strip_zone *strip_zone; 15 struct strip_zone *strip_zone;
17 mdk_rdev_t **devlist; /* lists of rdevs, pointed to by strip_zone->dev */ 16 mdk_rdev_t **devlist; /* lists of rdevs, pointed to by strip_zone->dev */
18 int nr_strip_zones; 17 int nr_strip_zones;