[parted-devel] [PATCH] libparted: improve overlapping partition
Wang Dong
dongdwdw at linux.vnet.ibm.com
Fri Mar 31 10:31:47 UTC 2017
parted does not allow real overlapping partition with constraint mechanism.
Everytime overlapping happens, parted will try to find free space to
allocate for new partition.If no free space found, it will complain
with this exception and exit.
Then for security, when no proper allocation found, it should jump to error.
And an exception will be presented.
This also correct the bug for DASD for the situation below:
root at s35lp11:˜/workspace/TOOL_PARTED# parted /dev/dasde
GNU Parted UNKNOWN
Using /dev/dasde
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted) print
Model: IBM S390 DASD drive (dasd)
Disk /dev/dasde: 22.2GB
Sector size (logical/physical): 512B/4096B
Partition Table: dasd
Disk Flags:
Number Start End Size File system Flags
(parted) mkpart 0% 100%
(parted) mkpart 33% 66%
Error: Can't have overlapping partitions.
Ignore/Cancel? i
BUG: specified free space extent for deleting not found in FMT7 DSCB!
exiting...
Signed-off-by: Wang Dong <dongdwdw at linux.vnet.ibm.com>
Reviewed-by: Andre Wild <wild at linux.vnet.ibm.com>¶¶
Signed-off-by: Hendrik Brueckner <brueckner at linux.vnet.ibm.com>¶
---
parted/parted.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/parted/parted.c b/parted/parted.c
index 6cc9eb4..90d06e0 100644
--- a/parted/parted.c
+++ b/parted/parted.c
@@ -782,6 +782,11 @@ do_mkpart (PedDevice** dev, PedDisk** diskp)
/* undo partition addition */
goto error_remove_part;
}
+ } else {
+ ped_exception_throw (PED_EXCEPTION_ERROR,
+ PED_EXCEPTION_CANCEL,
+ _("No proper space found for the new partition."));
+ goto error_remove_part;
}
char *align_err = NULL;
--
2.8.4
More information about the parted-devel
mailing list