Fix bug where v1 superblock might appear active when they should be clean.
Only happens on kernel with 32 bit sector_t.
This commit is contained in:
parent
beae1dfe2e
commit
4855f95c70
|
@ -990,7 +990,7 @@ int Assemble(struct supertype *st, char *mddev, int mdfd,
|
|||
if (must_close) close(mdfd);
|
||||
return 0;
|
||||
}
|
||||
if (verbose >= 0) {
|
||||
if (verbose >= -1) {
|
||||
fprintf(stderr, Name ": %s assembled from %d drive%s", mddev, okcnt, okcnt==1?"":"s");
|
||||
if (sparecnt)
|
||||
fprintf(stderr, " and %d spare%s", sparecnt, sparecnt==1?"":"s");
|
||||
|
|
4
super1.c
4
super1.c
|
@ -431,7 +431,9 @@ static void getinfo_super1(struct mdinfo *info, void *sbv)
|
|||
info->array.ctime = __le64_to_cpu(sb->ctime);
|
||||
info->array.utime = __le64_to_cpu(sb->utime);
|
||||
info->array.chunk_size = __le32_to_cpu(sb->chunksize)*512;
|
||||
info->array.state = (__le64_to_cpu(sb->resync_offset)+1) ? 0 : 1;
|
||||
info->array.state =
|
||||
(__le64_to_cpu(sb->resync_offset) >= __le64_to_cpu(sb->size))
|
||||
? 1 : 0;
|
||||
|
||||
info->data_offset = __le64_to_cpu(sb->data_offset);
|
||||
info->component_size = __le64_to_cpu(sb->size);
|
||||
|
|
Loading…
Reference in New Issue