lkml.org 
[lkml]   [2011]   [Jun]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH] init: add root=PARTUUID=UUID+/-%d support
From
On Thu, Jun 2, 2011 at 7:49 AM, Kay Sievers <kay.sievers@vrfy.org> wrote:
> On Wed, Jun 1, 2011 at 21:49, Will Drewry <wad@chromium.org> wrote:
>> Not sure if this is practical and/or interesting to others, but it's a
>> minimal change --
>>
>> Expands root=PARTUUID=UUID syntax to support selecting a root partition
>> by integer offset from a known, unique partition.  This approach
>> provides similar properties to specifying a device and partition number,
>> but using the UUID as the unique path prior to evaluating the offset.
>>
>> For example,
>>  root=PARTUUID=99DE9194-FC15-4223-9192-FC243948F88B+1
>> selects the partition with UUID 99DE.. then select the next
>> partition.
>>
>> This change is motivated by a particular usecase in Chromium OS where
>> the bootloader can easily determine what partition it is on (by UUID)
>> but doesn't perform general partition table walking.
>>
>> That said, support for this approach provides a direct mechanism for the
>> user to modify the root partition to boot without specifically needing
>> to extract each PARTUUID or update the bootloader explicitly when the
>> root partition UUID is changed (if it is recreated to be larger, for
>> instance, restored, etc).  Pinning to a /boot partition UUID with an
>> offset allows the arbitrary root partition reconfiguration/modifications
>> with slightly less ambiguity than just [dev][partition] and less
>> stringency than the specific root partition UUID.
>
> Kind of a creative notation to add/substract something from a uuid. :)

Necessity can sometimes do that :)

> If we are not sure we'll not need another magic thing in the future,
> we might want to go for a named parameter to add?
> Maybe instead of:
>  root=PARTUUID=99DE9194-FC15-4223-9192-FC243948F88B+2
> we could do:
>  root=PARTUUID=99DE9194-FC15-4223-9192-FC243948F88B,PARTNROFF=2
>
> Might be it's a but over the top, but the key is named PARTUUID, and a
> +- to it doesn't seem to explain what it does and can not really be
> expanded for even more creative uses. :)

Good call! I'll take a pass at integrating that. I can see a couple
different ways of handling the parsing (e.g., when and what does it
affect). Do you think it would make sense to keep it isolated to just
being a PARTUUID subargument or would it make more sense for
PARTNROFF= to be evaluated as a generic root= attribute? I can see
benefits to both, but one is considerably more minimal to implement :)
[Maybe I'll try both and see how they look.]

thanks!
--
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/

\
 
 \ /
  Last update: 2011-06-02 15:51    [W:0.082 / U:1.100 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site