[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]
[dm-devel] dmraid/lib/format/ddf ddf1.c ddf1_dump.c
- From: heinzm sourceware org
- To: dm-cvs sourceware org, dm-devel redhat com
- Subject: [dm-devel] dmraid/lib/format/ddf ddf1.c ddf1_dump.c
- Date: 24 Aug 2011 14:28:47 -0000
CVSROOT: /cvs/dm
Module name: dmraid
Changes by: heinzm sourceware org 2011-08-24 14:28:47
Modified files:
lib/format/ddf : ddf1.c ddf1_dump.c
Log message:
dmraid cannot erase ddf metadata.
It tries to seek to an offset too big by a factor of 512, and then writes
zero bytes to the anchor.
ddf1-
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/dmraid/lib/format/ddf/ddf1.c.diff?cvsroot=dm&r1=1.8&r2=1.9
http://sourceware.org/cgi-bin/cvsweb.cgi/dmraid/lib/format/ddf/ddf1_dump.c.diff?cvsroot=dm&r1=1.3&r2=1.4
--- dmraid/lib/format/ddf/ddf1.c 2010/03/18 16:53:17 1.8
+++ dmraid/lib/format/ddf/ddf1.c 2011/08/24 14:28:46 1.9
@@ -526,7 +526,8 @@
ddf1_sboffset) || !is_ddf1(lc, di, ddf1))
goto bad;
- ddf1->anchor_offset = ddf1_sboffset;
+ /* ddf1_sboffset is in bytes. */
+ ddf1->anchor_offset = ddf1_sboffset >> 9;
/* Convert endianness */
ddf1->in_cpu_format = 0;
@@ -962,6 +963,7 @@
ma[i].offset = ddf1->primary->primary_table_lba;
ma->offset = ddf1->anchor_offset;
+ ma->size = DDF1_BLKSIZE;
(ma++)->area = &ddf1->anchor;
(ma++)->area = ddf1->primary;
--- dmraid/lib/format/ddf/ddf1_dump.c 2010/07/13 20:22:38 1.3
+++ dmraid/lib/format/ddf/ddf1_dump.c 2011/08/24 14:28:46 1.4
@@ -60,7 +60,7 @@
{
log_print(lc, "%s (%s):", di->path, handler);
log_print(lc, "DDF1 anchor at %llu with tables in %s-endian format.",
- ddf1->anchor_offset / DDF1_BLKSIZE,
+ ddf1->anchor_offset,
(ddf1->disk_format == LITTLE_ENDIAN ? "little" : "big"));
}
[Date Prev][Date Next] [Thread Prev][Thread Next]
[Thread Index]
[Date Index]
[Author Index]