|
@@ -331,13 +331,14 @@ static int raid0_run (mddev_t *mddev)
|
|
goto out_free_conf;
|
|
goto out_free_conf;
|
|
size = conf->strip_zone[cur].size;
|
|
size = conf->strip_zone[cur].size;
|
|
|
|
|
|
- for (i=0; i< nb_zone; i++) {
|
|
|
|
- conf->hash_table[i] = conf->strip_zone + cur;
|
|
|
|
|
|
+ conf->hash_table[0] = conf->strip_zone + cur;
|
|
|
|
+ for (i=1; i< nb_zone; i++) {
|
|
while (size <= conf->hash_spacing) {
|
|
while (size <= conf->hash_spacing) {
|
|
cur++;
|
|
cur++;
|
|
size += conf->strip_zone[cur].size;
|
|
size += conf->strip_zone[cur].size;
|
|
}
|
|
}
|
|
size -= conf->hash_spacing;
|
|
size -= conf->hash_spacing;
|
|
|
|
+ conf->hash_table[i] = conf->strip_zone + cur;
|
|
}
|
|
}
|
|
if (conf->preshift) {
|
|
if (conf->preshift) {
|
|
conf->hash_spacing >>= conf->preshift;
|
|
conf->hash_spacing >>= conf->preshift;
|