latest upgrade fails installing kernel firmware

A few days ago I mentioned that the upgrades were breaking an app installed from the main repo.
That was resolved a few days later considering that the dry run didn’t flag that problem anymore. So I thought it was safe to proceed with the updates yesterday, more so since the number of updates almost doubled since a week ago.
The installation proceeded fine up to this point:


Checking for file conflicts: ..........................................................................................[done] 
error: unpacking of archive failed on file /usr/lib/firmware/qcom/LENOVO/21BX;63406505: cpio: File from package already exist
s as a directory in system
error: kernel-firmware-qcom-20220930-1.1.noarch: install failed
error: kernel-firmware-qcom-20220902-1.1.noarch: erase skipped
(  1/276) Installing: kernel-firmware-qcom-20220930-1.1.noarch .......................................................[error] 
Installation of kernel-firmware-qcom-20220930-1.1.noarch failed:
Error: Subprocess failed. Error: RPM failed: Command exited with status 1.
**Abort, retry, ignore? [a/r/i] (a): **a 
Warning: %posttrans scripts skipped while aborting: 
    kernel-firmware-qcom-20220930-1.1.noarch.rpm 

Problem occurred during or after installation or removal of packages:
Installation has been aborted as directed.
Please see the above error message for a hint. 
hgeorges@localhost:~> 

I must say that I don’t install this on a LENOVO system, it is an antiquated Dell Latitude.

Any advice how to clean this up? Thank you!

Hi
Uninstall the qcom firmware package and do a zypper dup again, numerous Forum posts about this :wink:

I am affected, too. Malcolm, your solution worked for me, but a follow-up question: can most users safely do without the qcom firmware package? I admit I have no idea what devices on my system might use it, if any.

(FWIW, after uninstalling it, per your advice, I:

zypper in kernel-firmware-qcom-20220930-1.1.noarch

… and this time it installed without a hitch.)

Hi
Well in this case it seems to be Lenovo related, if don’t have that system, then likely don’t need it. You can see which modules are in use via lsmod, then would need to look at the modinfo output to see if it uses firmware…

Something like;


#!/usr/bin/bash


MODULES1=`lsmod | awk '{ print $1 }'`


MODULES2=`echo $MODULES1 | cut -d" " -f2-`


for value in $MODULES2


do


   firmware=`/sbin/modinfo $value | grep "firmware:"`


   if  $firmware ]]; then


      echo "The $value kernel module uses the following firmware:"
      echo "$firmware"


   fi


done

This is a reported bug.
https://bugzilla.opensuse.org/show_bug.cgi?id=1204103