Messages in this thread | | | Date | Thu, 2 Jun 2011 08:48:16 -0500 | Subject | Re: [PATCH] init: add root=PARTUUID=UUID+/-%d support | From | Will Drewry <> |
| |
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/
| |