Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Skip to content
  • Will Drewry's avatar
    ee3ad542
    CHROMIUM: dm: boot time specification of dm= · ee3ad542
    Will Drewry authored
    This is a wrap-up of three patches pending upstream approval.
    I'm bundling them because they are interdependent, and it'll be
    easier to drop it on rebase later.
    
    1. dm: allow a dm-fs-style device to be shared via dm-ioctl
    
    Integrates feedback from Alisdair, Mike, and Kiyoshi.
    
    Two main changes occur here:
    
    - One function is added which allows for a programmatically created
    mapped device to be inserted into the dm-ioctl hash table.  This binds
    the device to a name and, optional, uuid which is needed by udev and
    allows for userspace management of the mapped device.
    
    - dm_table_complete() was extended to handle all of the final
    functional changes required for the table to be operational once
    called.
    
    2. init: boot to device-mapper targets without an initr*
    
    Add a dm= kernel parameter modeled after the md= parameter from
    do_mounts_md.  It allows for device-mapper targets to be configured at
    boot time for use early in the boot process (as the root device or
    otherwise).  It also replaces /dev/XXX calls with major:minor opportunistically.
    
    The format is dm="name uuid ro,table line 1,table line 2,...".  The
    parser expects the comma to be safe to use as a newline substitute but,
    otherwise, uses the normal separator of space.  Some attempt has been
    made to make it forgiving of additional spaces (using skip_spaces()).
    
    A mapped device created during boot will be assigned a minor of 0 and
    may be access via /dev/dm-0.
    
    An example dm-linear root with no uuid may look like:
    
    root=/dev/dm-0  dm="lroot none ro, 0 4096 linear /dev/ubdb 0, 4096 4096 linear /dv/ubdc 0"
    
    Once udev is started, /dev/dm-0 will become /dev/mapper/lroot.
    
    Older upstream threads:
    http://marc.info/?l=dm-devel&m=127429492521964&w=2
    http://marc.info/?l=dm-devel&m=127429499422096&w=2
    http://marc.info/?l=dm-devel&m=127429493922000&w=2
    
    Latest upstream threads:
    https://patchwork.kernel.org/patch/104859/
    https://patchwork.kernel.org/patch/104860/
    https://patchwork.kernel.org/patch/104861/
    
    
    
    Bug: 27175947
    
    Signed-off-by: default avatarWill Drewry <wad@chromium.org>
    
    Review URL: http://codereview.chromium.org/2020011
    
    
    
    Change-Id: I92bd53432a11241228d2e5ac89a3b20d19b05a31
    
    [AmitP: Refactored the original changes based on upstream changes,
            commit e52347bd ("Documentation/admin-guide: split the kernel parameter list to a separate file")]
    Signed-off-by: default avatarAmit Pundir <amit.pundir@linaro.org>
    ee3ad542
    CHROMIUM: dm: boot time specification of dm=
    Will Drewry authored
    This is a wrap-up of three patches pending upstream approval.
    I'm bundling them because they are interdependent, and it'll be
    easier to drop it on rebase later.
    
    1. dm: allow a dm-fs-style device to be shared via dm-ioctl
    
    Integrates feedback from Alisdair, Mike, and Kiyoshi.
    
    Two main changes occur here:
    
    - One function is added which allows for a programmatically created
    mapped device to be inserted into the dm-ioctl hash table.  This binds
    the device to a name and, optional, uuid which is needed by udev and
    allows for userspace management of the mapped device.
    
    - dm_table_complete() was extended to handle all of the final
    functional changes required for the table to be operational once
    called.
    
    2. init: boot to device-mapper targets without an initr*
    
    Add a dm= kernel parameter modeled after the md= parameter from
    do_mounts_md.  It allows for device-mapper targets to be configured at
    boot time for use early in the boot process (as the root device or
    otherwise).  It also replaces /dev/XXX calls with major:minor opportunistically.
    
    The format is dm="name uuid ro,table line 1,table line 2,...".  The
    parser expects the comma to be safe to use as a newline substitute but,
    otherwise, uses the normal separator of space.  Some attempt has been
    made to make it forgiving of additional spaces (using skip_spaces()).
    
    A mapped device created during boot will be assigned a minor of 0 and
    may be access via /dev/dm-0.
    
    An example dm-linear root with no uuid may look like:
    
    root=/dev/dm-0  dm="lroot none ro, 0 4096 linear /dev/ubdb 0, 4096 4096 linear /dv/ubdc 0"
    
    Once udev is started, /dev/dm-0 will become /dev/mapper/lroot.
    
    Older upstream threads:
    http://marc.info/?l=dm-devel&m=127429492521964&w=2
    http://marc.info/?l=dm-devel&m=127429499422096&w=2
    http://marc.info/?l=dm-devel&m=127429493922000&w=2
    
    Latest upstream threads:
    https://patchwork.kernel.org/patch/104859/
    https://patchwork.kernel.org/patch/104860/
    https://patchwork.kernel.org/patch/104861/
    
    
    
    Bug: 27175947
    
    Signed-off-by: default avatarWill Drewry <wad@chromium.org>
    
    Review URL: http://codereview.chromium.org/2020011
    
    
    
    Change-Id: I92bd53432a11241228d2e5ac89a3b20d19b05a31
    
    [AmitP: Refactored the original changes based on upstream changes,
            commit e52347bd ("Documentation/admin-guide: split the kernel parameter list to a separate file")]
    Signed-off-by: default avatarAmit Pundir <amit.pundir@linaro.org>
Loading