Upgrade fwupd to 1.8.3 in jammy to support HP Thunderbolt Dock G4

Bug #1979963 reported by Max Lee
18
This bug affects 2 people
Affects Status Importance Assigned to Milestone
OEM Priority Project
Confirmed
Critical
Kai-Chuan Hsieh
fwupd (Ubuntu)
Fix Released
Undecided
Unassigned
Jammy
Confirmed
Undecided
Unassigned
Kinetic
Fix Released
Undecided
Unassigned

Bug Description

[Impact]

 * Could not upgrade fw for HP Thunderbolt Dock G4.
 * Other bugs that will also get fix as this SRU is completed:
   LP: #1983451, LP: #1969976, LP: #1982103, LP: #1966364.

[Test Plan]

 * To reproduce and verify the bug: get a machine with G4 docking
   with pending firmware not upgrade, and use "fwupdmgr upgrade"
   to upgrade firmware.

 * Since we bump version (bump to 1.8.3
   in jammy), so we will follow the test steps in
   https://wiki.ubuntu.com/firmware-updates to make sure there
   is no regression.

[Where problems could occur]

 * For Jammy, since it's at the beginning of its life cycle. Per past
   history, we will eventually get SRU requests to support the new HW.
   Given so, we decide to bump up the version to 1.8.3.

 * Worse case the new fwupd will brick certain HW even if we have
   certain test coverage during the testing. It's unlikely to
   happen per past history of fwupd, they usually have very good
   code quality and have very limited regression. For the past
   regressions we know, it never bricks any HW.

 * Maybe we could not find certain devices or their fw upgrade
   won't work after SRU.

[Other Info]

 * Per check, the fwupd-signed version is the same in Jamm and Kinetic
   Given so, we don't need to upgrade fwupd-efi at this round.
 ---

Requests to upgrade fwupd to v1.8.1 to support HP Thunderbolt Dock G4 on Jammy

Ref:
Fwupd v1.8.1
This release adds support for the following hardware:
HP Thunderbolt Dock G4
https://github.com/fwupd/fwupd/releases/tag/1.8.1

LVFS
https://fwupd.org/lvfs/devices/com.hp.Dock_Thunderbolt_G4.ccgx.dmc.firmware

Max Lee (max-lee)
Changed in oem-priority:
importance: Undecided → Critical
information type: Proprietary → Public
Revision history for this message
Mario Limonciello (superm1) wrote :

Thunderbolt dock G4 support "first" showed up in 1.7.1. I would ask - are there other commits needed on top of the latest 1.7.x? (1.7.8)
If so, it may be a small backport to land those to 1.7.9 to pickup instead of moving to the new release in the LTS.

$ git describe --contains 3db727d46
1.7.1~17
$ git show 3db727d46
commit 3db727d460a839dec5bab9dc1f39ce96aeaf9e96
Author: syabbashp <email address hidden>
Date: Fri Oct 29 11:17:09 2021 -0500

    Add support for HP Thunderbolt Dock G4

diff --git a/plugins/ccgx/ccgx.quirk b/plugins/ccgx/ccgx.quirk
index 39bba0220..0ea1eebde 100644
--- a/plugins/ccgx/ccgx.quirk
+++ b/plugins/ccgx/ccgx.quirk
@@ -72,3 +72,14 @@ Name = HP USB-C/A Universal Dock G2
 CcgxImageKind = dmc-composite
 InstallDuration = 180
 RemoveDelay = 162000
+
+# HP Thunderbolt Dock G4
+[USB\VID_03F0&PID_0488]
+Plugin = ccgx
+GType = FuCcgxDmcDevice
+Summary = Dock Management Controller Device
+ParentGuid = USB\VID_03F0&PID_0363
+Name = HP Thunderbolt Dock G4
+CcgxImageKind = dmc-composite
+InstallDuration = 800
+RemoveDelay = 203000

Revision history for this message
Mario Limonciello (superm1) wrote :

Actually I see the FW has a hardcode requirement of:
  <requires>
    <id compare="ge" version="1.8.1">org.freedesktop.fwupd</id>
  </requires>

So if that is there for a strong enough reason (that it couldn't be downgraded to 1.7.9 with backports), then I suppose it will have to remain as is.

tags: added: originate-from-1979937 stella
Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

set to incomplete before we have further information

Changed in oem-priority:
status: New → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package fwupd - 1.8.1-2

---------------
fwupd (1.8.1-2) unstable; urgency=medium

  * Fix mistake in symbols file
  * Fix gitignore

 -- Mario Limonciello <email address hidden> Wed, 29 Jun 2022 20:01:43 -0500

Changed in fwupd (Ubuntu Kinetic):
status: New → Fix Released
Changed in fwupd (Ubuntu Jammy):
status: New → Confirmed
Revision history for this message
jeremyszu (os369510) wrote :

Hi Mario,

Just saw this

"upstream highly recommends distros to not backport individual patches so that OEMs can control only running fwupd/fwupdate updates on safe combinations."

from https://wiki.ubuntu.com/firmware-updates

Do you think it's suitable in this case? or the patch set is still mandatory.

Revision history for this message
Mario Limonciello (superm1) wrote (last edit ): Re: [Bug 1979963] Re: HP Thunderbolt Dock G4 needs fwupd v1.8.1 to support LVFS

Yes; Because of that statement it's safer to backport full 1.8.1 or newer version if that's true dependency and not just artificial from metadata.

As other issue is going to be fixed in 1.8.3 my suggestion is to upgrade 1.8.3 in both places if it passes muster.

Revision history for this message
jeremyszu (os369510) wrote : Re: HP Thunderbolt Dock G4 needs fwupd v1.8.1 to support LVFS

Understood, do we plan to land 1.8.x to focal as well? because this ticket also targeted to focal.

Revision history for this message
Mario Limonciello (superm1) wrote :

I think that should be a good plan.
@YC, you'll be handling SRU I presume once 1.8.3 lands in kinetic next week. Thoughts?

Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

@Mario, yes in general. I'll check around if there are any other SRU requests.

For focal, I kind of wondering if we should take the risk of landing 1.8.x there.

I might struggle a bit and update here.

Changed in oem-priority:
status: Incomplete → Confirmed
Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :
summary: - HP Thunderbolt Dock G4 needs fwupd v1.8.1 to support LVFS
+ Upgrade fwupd to 1.8.3in jammy to support HP Thunderbolt Dock G4
description: updated
description: updated
summary: - Upgrade fwupd to 1.8.3in jammy to support HP Thunderbolt Dock G4
+ Upgrade fwupd to 1.8.3 in jammy to support HP Thunderbolt Dock G4
Revision history for this message
Chris Halse Rogers (raof) wrote : Please test proposed package

Hello Max, or anyone else affected,

Accepted fwupd into jammy-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/fwupd/1.8.3-1~22.04.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested, what testing has been performed on the package and change the tag from verification-needed-jammy to verification-done-jammy. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-jammy. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in fwupd (Ubuntu Jammy):
status: Confirmed → Fix Committed
tags: added: verification-needed verification-needed-jammy
Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote : Autopkgtest regression report (fwupd/1.8.3-1~22.04.1)

All autopkgtests for the newly accepted fwupd (1.8.3-1~22.04.1) for jammy have finished running.
The following regressions have been reported in tests triggered by the package:

fwupd/1.8.3-1~22.04.1 (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/jammy/update_excuses.html#fwupd

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Mario Limonciello (superm1) wrote :

Here's the error:

FuPluginMtd:ERROR:../plugins/mtd/fu-self-test.c:50:fu_test_mtd_device_func: assertion failed (error == NULL): failed to open /dev/mtd0: No such file or directory (g-io-error-quark, 1)
Bail out! FuPluginMtd:ERROR:../plugins/mtd/fu-self-test.c:50:fu_test_mtd_device_func: assertion failed (error == NULL): failed to open /dev/mtd0: No such file or directory (g-io-error-quark, 1)
Aborted (core dumped)

It's very peculiar. We're supposed to skip mtd devices unless they are real.

https://github.com/fwupd/fwupd/commit/48544bd2ac46f3d953c2ac75229883e6cefac602

So it makes me suspect it's related to the autopkgtest environment used in jammy, since we didn't have a report of this failure in kinetic.

Revision history for this message
Mario Limonciello (superm1) wrote :

I looked at some of the kinetic test history (https://autopkgtest.ubuntu.com/packages/fwupd/kinetic/armhf) and find that there are some passes and some fails there with exact same package.

Failure was in #13 above, but a pass looks like this:
# FuQuirks-DEBUG: ignoring: The resource at ?/org/freedesktop/fwupd? does not exist
# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
# XbSilo-DEBUG: attempting to load /tmp/.9W13P1
# XbSilo-DEBUG: failed to load silo: blob too small
# FuQuirks-DEBUG: no quirk data, not creating prepared queries
ok 1 /mtd/device # SKIP could not find mtdram device

Furthermore earlier in the "fail" log you can see:

> FuEngine failed to add device /sys/devices/virtual/mtd/mtd0: failed to open /dev/mtd0: No such file or directory

In both logs I notice (fail/pass)

modprobe: FATAL: Module mtdram not found in directory /lib/modules/5.4.0-122-generic
and
modprobe: FATAL: Module mtdram not found in directory /lib/modules/5.4.0-109-generic

Because of this I don't believe we should interpret this test result as a failure. If we don't have the mtdram module loaded for autopkgtest (https://github.com/fwupd/fwupd/blob/main/contrib/debian/tests/ci#L4) then how can we possibly be runing mtdram tests?

Please waive this for the purpose of the SRU.

Revision history for this message
Mario Limonciello (superm1) wrote :

This commit will be included in 1.8.5 that avoids this problem: https://github.com/fwupd/fwupd/commit/d6a455e8567feaea923b546624025b86e5b8dee1

Revision history for this message
Ubuntu SRU Bot (ubuntu-sru-bot) wrote :

All autopkgtests for the newly accepted fwupd (1.8.3-1~22.04.1) for jammy have finished running.
The following regressions have been reported in tests triggered by the package:

fwupd/1.8.3-1~22.04.1 (armhf)

Please visit the excuses page listed below and investigate the failures, proceeding afterwards as per the StableReleaseUpdates policy regarding autopkgtest regressions [1].

https://people.canonical.com/~ubuntu-archive/proposed-migration/jammy/update_excuses.html#fwupd

[1] https://wiki.ubuntu.com/StableReleaseUpdates#Autopkgtest_Regressions

Thank you!

Revision history for this message
Yuan-Chen Cheng (ycheng-twn) wrote :

as 1.8.3-1 is remvoed from jammy-proposed, remove related tag.

tags: removed: verification-needed verification-needed-jammy
Revision history for this message
hugh chao (hugh712) wrote :

I think we need to re-run this SRU for jammy,
and think about even for focal.

Changed in fwupd (Ubuntu Jammy):
status: Fix Committed → Confirmed
Revision history for this message
hugh chao (hugh712) wrote :

@Max,

Would you mind sharing any plan/thought on this SRU even for focal?

Max Lee (max-lee)
Changed in oem-priority:
assignee: Yuan-Chen Cheng (ycheng-twn) → Kai-Chuan Hsieh (kchsieh)
Revision history for this message
Kai-Chuan Hsieh (kchsieh) wrote (last edit ):

@max @hugh

I created a fwupd 1.8.5 for jammy, could you check if it can fullfill both Dell and HP requirement?
so that I'll discuss with foundation team for knowing how to bump the version properly.

https://launchpad.net/~kchsieh/+archive/ubuntu/fwupd

Revision history for this message
hugh chao (hugh712) wrote :

@kchsieh

I'm fine on 1.8.5, please remember to run the test for Dell docks based on [0],
and how about focal?

[0] https://wiki.ubuntu.com/firmware-updates

Revision history for this message
Max Lee (max-lee) wrote :

Verified the fwupd 1.8.5 in comment #20, the HP TBT G4 dock can be upgrade successful.
the FW is 1.4.16 now.

Revision history for this message
Mario Limonciello (superm1) wrote :

I've uploaded a 1.9.16 fwupd and 0.3.18 libxmlb (build-dependency for fwpud 1.9.16) to the archive for an SRU team member to review. It should fall under https://launchpad.net/~superm1/+archive/ubuntu/uefi/+packages

I've got build logs and a diff of the uploads posted at this PPA as well:
https://launchpad.net/~superm1/+archive/ubuntu/uefi/+packages

Revision history for this message
Robie Basak (racb) wrote :

I'm concerned that my questions at https://lists.ubuntu.com/archives/ubuntu-release/2024-March/005937.html have not been fully answered. Please could you participate in that discussion?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.