raid6check.c: fix Q parity generation

In the transition to 4K page processing,
the Q parity generation had a wrong offset
in the buffer.
This patche fix this.

Signed off: piergiorgio.sartor@nexgo.de

Signed-off-by: NeilBrown <neilb@suse.de>
This commit is contained in:
Piergiorgio Sartor 2014-02-01 22:16:52 +01:00 committed by NeilBrown
parent afc755e9a6
commit 21d648132a
1 changed files with 1 additions and 1 deletions

View File

@ -354,7 +354,7 @@ int check_stripes(struct mdinfo *info, int *source, unsigned long long *offsets,
blocks_page[i] = blocks[i] + j * CHECK_PAGE_SIZE;
}
if (disk[j] == diskQ) {
qsyndrome(p, (uint8_t*)stripes[diskQ], (uint8_t**)blocks_page, data_disks, CHECK_PAGE_SIZE);
qsyndrome(p, (uint8_t*)stripes[diskQ] + j * CHECK_PAGE_SIZE, (uint8_t**)blocks_page, data_disks, CHECK_PAGE_SIZE);
} else {
char *all_but_failed_blocks[data_disks];
int failed_block_index = block_index_for_slot[disk[j]];