[parted-devel] [PATCH] mac: support sector size > 512 correctly

Sergei Antonov saproj at gmail.com
Wed Apr 23 16:37:06 UTC 2014


On 23 April 2014 01:50, Brian C. Lane <bcl at redhat.com> wrote:
> On Sat, Mar 01, 2014 at 09:43:31PM +0100, Sergei Antonov wrote:
>> This patch fixes several problems found when trying to do Apple
>> Partition Map on a 4K-sector iPod. The problems happened because of
>> unneeded conversion between physical sectors and 512-byte units.
>> For devices with sector 512 the conversion did no harm, for others it did.
>>
>> List of problems (all are gone with the patch):
>>
>> * Partition in OS X, connect to Linux, run "parted <dev> print".
>>   "Error: Can't have a partition outside the disk!" is shown.
>>   Every partition is displayed 8 times (4k/512) bigger its real size.
>>
>> * Exec "mktable mac", connect to OS X.
>>   The drive's partitioning scheme is not recognized.
>>
>> * mkpart creates partitions 8 times (4k/512) smaller than requested.
>>
>> Signed-off-by: Sergei Antonov <saproj at gmail.com>
>> ---
>>  libparted/labels/mac.c | 59 ++++++++++++++++++--------------------------------
>>  1 file changed, 21 insertions(+), 38 deletions(-)
>
> Do you have any documentation you can reference for this disk label? It
> looks like the ones linked to in mac.c are gone.

Nope.
But there is Apple's source code which may act as documentation:
http://opensource.apple.com/source/IOStorageFamily/IOStorageFamily-172/IOApplePartitionScheme.cpp
http://opensource.apple.com/source/IOStorageFamily/IOStorageFamily-172/IOApplePartitionScheme.h

Also Linux source code in <linux source tree>/block/partitions/mac.*



More information about the parted-devel mailing list