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

Issue 692149 link

Starred by 1 user

Issue metadata

Status: Verified
Owner:
Last visit > 30 days ago
Closed: Mar 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Firmware update verifier should check its work

Reported by jrbarnette@chromium.org, Feb 14 2017

Issue description

The CrOS firmware update verifier doesn't check that
the target firmware is successfully present after it
triggers update.  This can be a problem.  The basic
scenario is this:
  * A particular board is assigned firmware version V0.
  * Firmware installed on a DUT is V1, which is later
    than V0.
  * In verify, the verifier will see that V1 != V0, and
    try to update.
  * The chromeos-firmwareupdate script seems not to be
    willing to downgrade from V1 to V0.
  * After update, the DUT is still running V1.

This can cause problems, because in some cases "DUT needs
to update" becomes "DUT must install the repair build",
which causes Provision and/or Reset failures, both of which
can disrupt or fail testing.

We need to fail any DUT that doesn't successfully install
the firmware it thought it installed, rather than allow that
DUT to continually cause disruption.

 
This particularly was a problem for reef, pyro, and snappy.
All of these boards were deployed with manually installed
firmware; the firmware installed was from a recent ToT build,
rather than the designated deployment build.  The result was
DUTs that were continually repairing and disrupting many builds.

Project Member

Comment 2 by bugdroid1@chromium.org, Mar 2 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/autotest/+/1b489932343527b85fb391527cc59231ebad092c

commit 1b489932343527b85fb391527cc59231ebad092c
Author: Richard Barnette <jrbarnette@chromium.org>
Date: Thu Mar 02 21:20:47 2017

[autotest] Check the results of firmware update.

In the standard firmware update verifier, after running
chromeos-firmwareupdate, check that the new firmware running on
the DUT matches the firmware we tried to install.

BUG= chromium:692149 
TEST=test a successful repair run

Change-Id: I642b0e08e75fc6e0ba29d323ff36c64f295cf8cd
Reviewed-on: https://chromium-review.googlesource.com/442665
Commit-Ready: Richard Barnette <jrbarnette@chromium.org>
Tested-by: Richard Barnette <jrbarnette@chromium.org>
Reviewed-by: Prathmesh Prabhu <pprabhu@chromium.org>

[modify] https://crrev.com/1b489932343527b85fb391527cc59231ebad092c/server/hosts/cros_firmware.py

Status: Fixed (was: Started)
Status: Verified (was: Fixed)
Bug 701014 happened because this code detected it.  Which is what
we wanted.

Sign in to add a comment