Richard W.M. Jones
2010-Oct-06 08:10 UTC
[Libguestfs] [PATCH] part-disk: Align whole disk partition to 64 sectors.
-- Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones virt-top is 'top' for virtual machines. Tiny program with many powerful monitoring features, net stats, disk stats, logging, etc. http://et.redhat.com/~rjones/virt-top -------------- next part -------------->From 4f6bd18d2e2a9c1d317a07b59072579d8fff42ac Mon Sep 17 00:00:00 2001From: Richard W.M. Jones <rjones at redhat.com> Date: Wed, 6 Oct 2010 09:08:39 +0100 Subject: [PATCH] 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. --- daemon/parted.c | 24 +++++++++--------------- 1 files changed, 9 insertions(+), 15 deletions(-) diff --git a/daemon/parted.c b/daemon/parted.c index 2f928b0..89cc0d6 100644 --- a/daemon/parted.c +++ b/daemon/parted.c @@ -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, -- 1.7.3.1
Possibly Parallel Threads
- [PATCH] parted: Check partition number >= 1 in several calls.
- [ANNOUNCE] libguestfs 1.14 released - tools for managing virtual machines and disk images
- Re: [PATCH] resize: add sector size in debug_partition
- Re: check-release FAILED (was: Re: [PATCH 1/1] New partition API: part_resize)
- Re: [PATCH v2] lib: add support for disks with 4096 bytes sector size