part-disk: Align whole disk partition to 64 sectors.

Change the part-disk command so it aligns the partition to
64 sectors (instead of 1 or 34 sectors as now).  This should
ensure that the filesystem contained within is aligned.
This commit is contained in:
Richard W.M. Jones
2010-10-06 09:08:39 +01:00
parent ccc5425105
commit 4f6bd18d2e

View File

@@ -178,27 +178,21 @@ do_part_del (const char *device, int partnum)
int
do_part_disk (const char *device, const char *parttype)
{
const char *startstr;
const char *endstr;
parttype = check_parttype (parttype);
if (!parttype) {
reply_with_error ("unknown partition type: common choices are \"gpt\" and \"msdos\"");
return -1;
}
/* Voooooodooooooooo (thanks Jim Meyering for working this out). */
if (STREQ (parttype, "msdos")) {
startstr = "1s";
endstr = "-1s";
} else if (STREQ (parttype, "gpt")) {
startstr = "34s";
endstr = "-34s";
} else {
/* untested */
startstr = "1s";
endstr = "-1s";
}
/* Align all partitions created this way to 64 sectors, and leave
* the last 64 sectors at the end of the disk free. This wastes
* 32K+32K = 64K on 512-byte sector disks. The rationale is:
*
* - aligned operations are faster
* - GPT requires at least 34 sectors at the end of the disk.
*/
const char *startstr = "64s";
const char *endstr = "-64s";
RUN_PARTED (return -1,
device,