Commit Graph

8180 Commits

Author SHA1 Message Date
Richard Hughes
02e3549f1a trivial: Fix build failure when /var/cache/fwupd is not writable
The fu_context_load_quirks(FU_QUIRKS_LOAD_FLAG_NO_CACHE) has to be done first,
otherwise fu_context_load_hwinfo() auto-loads the quirk db with the defaults.

Fixes a build failure in Fedora QA.
2022-12-14 14:12:17 +00:00
Richard Hughes
41314f3b3f ti-tps6598x: Add a new plugin to update some TI USB-4 docks 2022-12-14 12:50:25 +00:00
Richard Hughes
9c989190d4 trivial: Fix a recently introduced -Wunused-variable 2022-12-14 09:51:22 +00:00
Richard Hughes
4ef8854618 trivial: Add convenience API for future use 2022-12-13 20:38:49 +00:00
Richard Hughes
882a7eec85 trivial: Fix warning when running fwupdtool --version 2022-12-13 13:47:35 +00:00
Richard Hughes
0d0ffa4708 Use prepared query when getting getting the bkc tags
There's no point parsing and optimizing this query 12 times at startup.
2022-12-13 13:47:22 +00:00
Richard Hughes
707b1ed6d5 trivial: Don't use xb_string_append_union() to join strings 2022-12-13 13:47:22 +00:00
Richard Hughes
970b4e3bda Use a prepared query when getting the remote ID
We do this a handful of times when calling GetDevices() and GetHistory() and
parsing the XPath expression each time is inefficient and kinda slow.
2022-12-13 13:47:22 +00:00
Richard Hughes
000e986dc8 Use the indexed query when getting releases for devices
This speeds up startup by ~9% on a machine with lots of devices attached.
2022-12-13 13:47:22 +00:00
Jakub Kolakowski
45f5b50d6f Add needs-shutdown flag for Solidigm NVMe device 2022-12-13 08:37:17 +00:00
Richard Hughes
83c90262d1 Remove plugin and device GRWLocks
This only have any protective effect if we're using multiple threads -- which
we're not. Removing these unused locks does not affect startup speed, but does
drop the idle RSS by ~10kB.
2022-12-12 17:29:38 +00:00
Richard Hughes
18dac1885d Fix a tiny memory leak when parsing signed reports 2022-12-12 17:29:17 +00:00
Richard Hughes
ef6c399a64 Fix a tiny memory leak when probing MEI devices 2022-12-12 17:29:17 +00:00
Richard Hughes
f3fdb7f6a9 Only write devices.json once at startup, rather than for each device add
This means we do 15% less i/o at startup, which means we start a lot faster.
2022-12-12 15:27:55 +00:00
Richard Hughes
92057fe0f1 Do not filter in fwupdtool for ->attach() if specifying --force 2022-12-12 13:51:40 +00:00
Richard Hughes
9549cd3a18 Allow reinstalling on devices with only-version-upgrade set
All three devices with that flag support reinstalling the current version for testing.
2022-12-12 12:56:00 +00:00
Richard Hughes
38dfdfd42e Convert FuProgress to a FINAL object
We're not going to subclass this, and making it final saves during startup:

 * 300K calls of fu_progress_get_instance_private()
 * 280K calls of fu_progress_get_step_weighting()
2022-12-11 20:26:15 +00:00
Richard Hughes
a157e3d19d Add fu_version_from_uint24() for future usage 2022-12-11 20:25:52 +00:00
Richard Hughes
c7ab395ff4 Return a more useful error if USB recovery() failed 2022-12-11 20:25:36 +00:00
Richard Hughes
baef005a3c trivial: Add compiler hint that fu_device_build_instance_id() must end in NULL 2022-12-10 14:43:03 +00:00
Richard Hughes
1d69bec346 trivial: Fix up a plugin method name 2022-12-10 14:42:30 +00:00
Mario Limonciello
308068e73b trivial: fix autopkgtest failure
Explicitly load_hwinfo at start of mtd self test
```
.# Start of mtd tests
.# GLib-GIO-DEBUG: _g_io_module_get_default: Found default implementation local (GLocalVfs) for ?gio-vfs?
.# XbSilo-DEBUG: attempting to load /tmp/.E94WW1
.# XbSilo-DEBUG: failed to load silo: blob too small
Bail out! FuContext-FATAL-CRITICAL: cannot use HWIDs before calling ->load_hwinfo()

(/usr/libexec/installed-tests/fwupd/mtd-self-test:1758): FuContext-CRITICAL **: 23:27:43.095: cannot use HWIDs before calling ->load_hwinfo()
```
2022-12-09 07:53:33 -06:00
Mario Limonciello
85a168206c trivial: uefi-capsule: decrease warning about missing header to debug
Plenty of vendors rely upon this behavior, so we don't need to be
making noise in everyone's logs for them.
2022-12-08 14:18:47 -06:00
Mario Limonciello
45662477f4 Don't suggest iommu=pt to people (Fixes: #5304) 2022-12-08 09:17:00 -06:00
Richard Hughes
7fa569f87d Add the fwupd version to the HSI result if the chassis is invalid
If the user uploads a report to the LVFS we don't currently get the fwupd
version data in this case. And it makes the LVFS unhappy.
2022-12-08 12:51:24 +00:00
Richard Hughes
b686da54c8 trivial: post release version bump 2022-12-07 18:52:46 +00:00
Richard Hughes
1024d97d61 Release fwupd 1.8.8 2022-12-07 18:39:56 +00:00
Richard Hughes
291d2c116f intel-gsc: Use the new 'gpu' device icon 2022-12-07 17:08:53 +00:00
Richard Hughes
60e83e1918 Load report data from /etc/lsb-release 2022-12-07 11:48:18 +00:00
Richard Hughes
189b4a413d Add the X-Gpu category for new hardware support 2022-12-06 17:30:54 +00:00
Richard Hughes
ecb38b1199 Move to C11
Hey, it's only 11 years ago and I'd like to use _Generic.
2022-12-06 17:27:12 +00:00
Richard Hughes
93d6d6b7f8 intel-gsc: Use measured progress steps on real hardware 2022-12-06 15:18:47 +00:00
Richard Hughes
7ad92a8eb9 intel-gsc: Wait for the GPU to come back after updating 2022-12-06 15:13:19 +00:00
Richard Hughes
118bef7666 intel-gsc: Mark GPU devices as internal 2022-12-06 15:11:52 +00:00
Richard Hughes
4a29b831fb Mark all MEI devices as internal 2022-12-06 15:10:45 +00:00
Richard Hughes
ba14cff478 trivial: Fix a gtk-doc introspection warning 2022-12-06 14:43:33 +00:00
Richard Hughes
d74a4704c5 intel-gsc: Make the code match the comment to fix upgrading on real hardware 2022-12-06 14:41:24 +00:00
Richard Hughes
9485e898c3 trivial: Remove some obsolete fuzzing instructions 2022-12-06 13:00:57 +00:00
Richard Hughes
3538637a7e Use the correct AppStream ID for the KM 2022-12-05 16:05:58 +00:00
Richard Hughes
324c1b8593 trivial: Fix fuzzers 2022-12-01 14:29:04 +00:00
Richard Hughes
123fac737a trivial: Fix some g_prefix_error() calls to include the trailing space 2022-11-30 10:13:19 +00:00
Gary Buhrmaster
ad930b8d13 The README.md is not a config file.
This also removes the errant % in spec file and addrssses the
build error "sh: line 1: noreplace: command not found"
2022-11-30 07:12:43 +00:00
Jelle van der Waa
090c15e87e build: don't record timestamp in builtin.quirk.gz
On Arch Linux fwupd is almost reproducible except for the timestamp
recorded in the generated gzip file.
2022-11-29 22:18:56 +00:00
Richard Hughes
e1fdc5218f trivial: Use #defines when building report metadata 2022-11-29 17:31:36 +00:00
Richard Hughes
3a8824d4e7 Add FwupdReport to expose the signed reports from QA teams
Some front end clients are going to be allow-listing updates based on what
the release was tested on, or by who the testing team was.

Export this data from each report when requested.
2022-11-29 16:55:55 +00:00
Richard Hughes
9d20464606 Add more metadata to the report attributes
This can be used in gnome-control-center when building the security report.

Fixes https://github.com/fwupd/fwupd/discussions/5262
2022-11-29 16:55:25 +00:00
Richard Hughes
a08f8b229c Only modify the historical metadata if a release is available
This was causing the SystemIntegrityOld metadata key to be overwritten and not
included in the upload. It is much better to be explicit rather than using the
default release, which may not be what the user actually upgraded to.
2022-11-29 09:05:16 +00:00
Richard Hughes
b521924b00 Make fu_device_get_release_default() match the parent semantics
In various places the code was checking if a release was set, but this would
always be false as the release was being auto-created. This was masking valid
bugs, and was confusing to have the superclass have different semantics to the
baseclass.
2022-11-29 09:05:16 +00:00
Richard Hughes
ae8e553cb2 Abstract out the polkit auth implementation 2022-11-29 09:04:09 +00:00
Demi Marie Obenour
ff1f3677d9 Drop sys-usb support
sys-usb will use the Qubes OS updates proxy and an in-VM fwupd instance.
This allows shedding a large amount of code.
2022-11-29 09:03:08 +00:00