Commit Graph

8120 Commits

Author SHA1 Message Date
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
Demi Marie Obenour
0bbdc8a0b6 Prevent exception when comparing invalid versions
This broke the test suite.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
1836433efc Pass -q and -a to qvm-run
Useful to avoid junk in e.g. stderr.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
49fa741fcf trivial: contrib/qubes: fix AttributeError and ImportError
Also make various minor cleanups.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
63903c82d9 contrib/qubes: Do not dynamically create shell commands
The security reasons for this are obvious.  When shell commands must be
generated dynamically, use shlex.join() to ensure that proper quoting is
done.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
cb8c163462 trivial: contrib/qubes: Use fwupdmgr --json instead of fwupdagent
The later is deprecated and the former is a drop-in replacement.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
4110e356bf contrib/qubes: Do not perform manual .cab verification
fwupd already does this, and besides the file has been checked against
the metadata already.
2022-11-29 09:03:08 +00:00
Demi Marie Obenour
3150f04acf trivial: contrib/qubes: Place cache in /var/cache
/root/.cache is for applications run by the root user in an interactive
session, not for system services.
2022-11-29 09:03:08 +00:00
Richard Hughes
ef6536a424 Incorporate the device when merging in properties for GetDetails 2022-11-29 09:02:13 +00:00
Richard Hughes
40d02f3ae1 Add fwupd_release_incorporate() for future usage 2022-11-29 09:01:58 +00:00
Richard Hughes
3bf53fe35b intel-usb4: Ensure the device name is set with FuUsbDevice->setup 2022-11-29 09:01:29 +00:00