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

Commit 09770e0b authored by Andre Noll's avatar Andre Noll Committed by NeilBrown
Browse files

md: raid0: Remove hash table.



The raid0 hash table has become unused due to the changes in the
previous patch. This patch removes the hash table allocation and
setup code and kills the hash_table field of struct raid0_private_data.

Signed-off-by: default avatarAndre Noll <maan@systemlinux.org>
Signed-off-by: default avatarNeilBrown <neilb@suse.de>
parent d27a43ab
Loading
Loading
Loading
Loading
+0 −12
Original line number Diff line number Diff line
@@ -326,22 +326,14 @@ static int raid0_run (mddev_t *mddev)
		nb_zone = s + round;
	}
	printk(KERN_INFO "raid0 : nb_zone is %d.\n", nb_zone);

	printk(KERN_INFO "raid0 : Allocating %zu bytes for hash.\n",
				nb_zone*sizeof(struct strip_zone*));
	conf->hash_table = kmalloc (sizeof (struct strip_zone *)*nb_zone, GFP_KERNEL);
	if (!conf->hash_table)
		goto out_free_conf;
	sectors = conf->strip_zone[cur].sectors;

	conf->hash_table[0] = conf->strip_zone + cur;
	for (i=1; i< nb_zone; i++) {
		while (sectors <= conf->spacing) {
			cur++;
			sectors += conf->strip_zone[cur].sectors;
		}
		sectors -= conf->spacing;
		conf->hash_table[i] = conf->strip_zone + cur;
	}
	if (conf->sector_shift) {
		conf->spacing >>= conf->sector_shift;
@@ -384,8 +376,6 @@ static int raid0_stop (mddev_t *mddev)
	raid0_conf_t *conf = mddev_to_conf(mddev);

	blk_sync_queue(mddev->queue); /* the unplug fn references 'conf'*/
	kfree(conf->hash_table);
	conf->hash_table = NULL;
	kfree(conf->strip_zone);
	conf->strip_zone = NULL;
	kfree(conf);
@@ -494,8 +484,6 @@ static void raid0_status (struct seq_file *seq, mddev_t *mddev)
	h = 0;
	for (j = 0; j < conf->nr_strip_zones; j++) {
		seq_printf(seq, "      z%d", j);
		if (conf->hash_table[h] == conf->strip_zone+j)
			seq_printf(seq, "(h%d)", h++);
		seq_printf(seq, "=[");
		for (k = 0; k < conf->strip_zone[j].nb_dev; k++)
			seq_printf(seq, "%s/", bdevname(
+0 −1
Original line number Diff line number Diff line
@@ -12,7 +12,6 @@ struct strip_zone

struct raid0_private_data
{
	struct strip_zone **hash_table; /* Table of indexes into strip_zone */
	struct strip_zone *strip_zone;
	mdk_rdev_t **devlist; /* lists of rdevs, pointed to by strip_zone->dev */
	int nr_strip_zones;