When a partition is created as specified in the AI engine manifest, the AI engine can determine the placement of the partition based on the unused regions in the partition map. The smallest free region accommodating the new partition will be automatically selected. Previously, the starting sector was required.
http://cr.opensolaris.org/~wmsch/bug-5656/ http://defect.opensolaris.org/bz/show_bug.cgi?id=5656 The automatic placement can be indicated simply by not specifying a starting sector for the partition in the manifest: element partition_start_sector Changed static functions used by om_validate_and_resize_disk_partitions() that were assuming sorted partition tables. Added additional parameter to om_validate_and_resize_disk_partitions() to specify whether or not to remove gaps between partitions. Gaps will now be compressed for the GUI, but not for AI. Also, code for http://defect.opensolaris.org/bz/show_bug.cgi?id=5655 appears, but will not be invoked. This enhancement should be available soon. Tested by creating different combinations of FAT32 partitions with fdisk before using AI to create Solaris partition: - leaving free space of varying sizes between them - leaving free space at end, middle, beginning of disk - denying free space of requested size - exercised om_validate_and_resize_disk_partitions() functions - saved output of fdisk -W for testing identical conditions after code changes Made AI manifest element partition_number optional, since it is ignored when creating partitions.
