]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
ddf: endian fixes.
authorNeil Brown <neilb@suse.de>
Fri, 18 Jul 2008 06:37:03 +0000 (16:37 +1000)
committerNeil Brown <neilb@suse.de>
Fri, 18 Jul 2008 06:37:03 +0000 (16:37 +1000)
We forgot to convert endian for lba_offset at one point,
and use le32 instead of be32 right nearby!!

Signed-off-by: Neil Brown <neilb@suse.de>
super-ddf.c

index fb0713afb4d668330f1e20a9ec2c209a887dae1f..cb7f67c4fdeb9e00a12c4dee2b6109c9193fed76 100644 (file)
@@ -2604,8 +2604,8 @@ static struct mdinfo *container_content_ddf(struct supertype *st)
                        dev->disk.raid_disk = i;
                        dev->disk.state = (1<<MD_DISK_SYNC)|(1<<MD_DISK_ACTIVE);
 
-                       dev->events = __le32_to_cpu(ddf->primary.seq);
-                       dev->data_offset = vc->lba_offset[i];
+                       dev->events = __be32_to_cpu(ddf->primary.seq);
+                       dev->data_offset = __be64_to_cpu(vc->lba_offset[i]);
                        dev->component_size = __be64_to_cpu(vc->conf.blocks);
                        if (d->devname)
                                strcpy(dev->name, d->devname);