New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 593735 link

Starred by 1 user

Issue metadata

Status: Archived
Owner: ----
Closed: Mar 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 3
Type: Feature



Sign in to add a comment

Improve design of early udev trigger operations

Reported by jrbarnette@chromium.org, Mar 10 2016

Issue description

This FR is inspired by this CL:
    https://chromium-review.googlesource.com/#/c/331061/
However, the problem it poses is more general.

Currently, udev triggering happens in two upstart jobs
in common boot code:
  * udev-trigger-early triggers for some specified devices, and
    blocks boot-services.
  * udev-trigger starts after Chrome, and triggers devices
    not handled by udev-trigger-early.

From time to time, we've seen the need for board/platform
specific triggers.  Constantly adding device classes to
udev-trigger-early is slightly unwieldy and isn't always
appropriate.  We need a more flexible design.

With that thought, I think the following would work:

Add a "device-services" upstart job that looks like this:
    start on started udev

    pre-start exec udevadm settle

Make these changes to "udev-trigger-early":
  * Change to use "start on starting device-services".
  * Make the job a task.
  * Drop the invocation of `udevadm settle`.

Change the start condition for "boot-services" to be
    start on stopped startup and started device-services and stopped boot-splash

After these changes, any platform needing device specific
udev triggers can write a job along these lines:
    start on starting device-services
    task

    script
      "udev trigger or other commands, as needed"
    end script

The job doesn't need "udevadm settle", and shouldn't use it.

This scheme has the following properties:
  * Device detection that's deemed critical to Chrome can
    force Chrome to wait until the devices are ready.
  * Device detection can start without waiting for
    chromeos_startup or the splash screen, allowing
    more potential for parallelism in startup.

 
Project Member

Comment 1 by sheriffbot@chromium.org, Mar 13 2017

Status: Archived (was: Unconfirmed)
Issue has not been modified or commented on in the last 365 days, please re-open or file a new bug if this is still an issue.

For more details visit https://www.chromium.org/issue-tracking/autotriage - Your friendly Sheriffbot

Sign in to add a comment