On Thu, Mar 20, 2014 at 04:44:02PM +0100, Petr Uzel wrote: > Attempt to create a partition on ECKD DASD resulted in a rather cryptic > error if the partition placed at the very start of the disk: > > linux:~ # parted /dev/dasdb mkpart ext2 0G 2G > BUG: specified free space extent for deleting doesn't match free space > currently shown in FMT7 DSCB! > exiting... > > This patch reserves first two tracks on the disk, preventing > parted to overwrite VTOC metadata. This is what fdasd utility > seems to be doing. > > * libparted/labels/dasd.c (_primary_constraint): > Reserve frist two tracks on the disk for VTOC metadata. > --- > libparted/labels/dasd.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/libparted/labels/dasd.c b/libparted/labels/dasd.c > index f5b0f2b..4593b10 100644 > --- a/libparted/labels/dasd.c > +++ b/libparted/labels/dasd.c > @@ -805,7 +805,8 @@ _primary_constraint (PedDisk* disk) > if (!ped_alignment_init (&end_align, -1, > disk->dev->hw_geom.sectors > * sector_size)) > return NULL; > - if (!ped_geometry_init (&max_geom, disk->dev, 0, disk->dev->length)) > + if (!ped_geometry_init (&max_geom, disk->dev, 2 * > disk->dev->hw_geom.sectors * sector_size, > + disk->dev->length - 2 * > disk->dev->hw_geom.sectors * sector_size)) > return NULL; > > return ped_constraint_new(&start_align, &end_align, &max_geom, > -- > 1.8.1.4 > >
This looks reasonable to me, but I'd like to hear what IBM thinks about it. -- Brian C. Lane | Anaconda Team | IRC: bcl #anaconda | Port Orchard, WA (PST8PDT)

