Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755335Ab0HDP5E (ORCPT ); Wed, 4 Aug 2010 11:57:04 -0400 Received: from mail-fx0-f46.google.com ([209.85.161.46]:62822 "EHLO mail-fx0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754486Ab0HDP5B convert rfc822-to-8bit (ORCPT ); Wed, 4 Aug 2010 11:57:01 -0400 MIME-Version: 1.0 In-Reply-To: References: <1280887483-2979-2-git-send-email-wad@chromium.org> <20100804090049.GH5464@nb.net.home> Date: Wed, 4 Aug 2010 10:56:59 -0500 Message-ID: Subject: Re: [PATCH v2 2/3] genhd, efi: add efi partition metadata to hd_structs From: Will Drewry To: Kay Sievers Cc: Tejun Heo , Karel Zak , linux-kernel@vger.kernel.org, Jens Axboe , "David S. Miller" , Andrew Morton , Joe Perches , Jan Blunck , Greg Kroah-Hartman Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8BIT Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1883 Lines: 35 On Wed, Aug 4, 2010 at 10:28 AM, Kay Sievers wrote: > On Wed, Aug 4, 2010 at 16:44, Will Drewry wrote: >> On Wed, Aug 4, 2010 at 5:14 AM, Kay Sievers wrote: > >>> But the only thing we are really interested in is the UUID, which, >>> like Tejun already suggested, we should probably store >>> format-independent, and have it always accessible. That way, we would >>> not need any type-specific parser, we just handle the normal DCE >>> format. >> >> I'll bump it out and make it the efi code generic-ify its uuid. ?Out >> of curiousity, were you and Tejun thinking of keeping it as a 36 byte >> string or as the 16 byte packed value. ?While less space efficient, >> I'd prefer the u8[36] as it avoids dealing with versioning when >> parsing the user-supplied string. ?Instead, each partition type can >> properly unparse its uuids according to what they expect. > > I think we should use the packed version, which is case-insensitive, > or at least normalize it to a defined case. Yeah, I'm all for tolower()ing the entire value instead of packing :) , but looking at the uuid code quickly, and it seems that the only real difference in ordering practically is big-endian versus little endian. Since sprintf supports converting both of those to strings, it would make sense to just have a part_pack_uuid(char *uuid) which will always do, let's say big endian, packing. Then it won't be too much work for the partition format to export the value either directly to the right format or just via sprintf then pack. I'll add a common packer/unpacker, and see how it looks. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/