From e3b62e643b1e5c34256a0bb4eb61326b52414ecb Mon Sep 17 00:00:00 2001 From: Dylan Van Assche Date: Sat, 18 Dec 2021 16:44:21 +0100 Subject: [PATCH] modem-manager: uninhibit modem after upgrade When fastboot is used, the modem is rediscovered through udev after upgrading. However, the modem-manager plugin did not mark the modem as unhibited with ModemManager. This resulted into ModemManager not exposing the modem without restarting ModemManager or rebooting the device. Mark the modem as uninhibited and do not take ownership over the plugin data as this caused segfaults. --- plugins/modem-manager/fu-plugin-modem-manager.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/plugins/modem-manager/fu-plugin-modem-manager.c b/plugins/modem-manager/fu-plugin-modem-manager.c index 218419f14..d9165a32a 100644 --- a/plugins/modem-manager/fu-plugin-modem-manager.c +++ b/plugins/modem-manager/fu-plugin-modem-manager.c @@ -128,6 +128,10 @@ fu_plugin_mm_udev_device_port_added(FuPlugin *plugin, fu_plugin_mm_udev_device_ports_timeout_reset(plugin); return; } + + /* device is being created, update is complete, uninhibit */ + fu_plugin_mm_uninhibit_device(plugin); + /* create device and add to cache */ dev = fu_mm_device_udev_new(fu_plugin_get_context(plugin), priv->manager, priv->inhibited); fu_mm_device_udev_add_port(dev, subsystem, path, ifnum);