Bug 828050 - Invalid firmware, out of date
Summary: Invalid firmware, out of date
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: linux-firmware
Version: 17
Hardware: x86_64
OS: Linux
unspecified
urgent
Target Milestone: ---
Assignee: Josh Boyer
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2012-06-04 06:57 UTC by Aaron W. Hsu
Modified: 2012-06-22 18:51 UTC (History)
8 users (show)

Fixed In Version:
Clone Of:
Environment:
Last Closed: 2012-06-22 18:51:36 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Aaron W. Hsu 2012-06-04 06:57:42 UTC
Description of problem:

Current iwl6000g2b-firmware version 5 does not work with Intel 6235 wireless cards, causing a driver crash and disabling wireless capability.


Version-Release number of selected component (if applicable):

Version 5 of firmware.


How reproducible: Consistent, every time.


Steps to Reproduce:
1. Enable iwlwifi wireless for Intel 6235 card.
  
Actual results: Dmesg reports invalid version (tries to load version 6), and fails to load. Attempting to load older API results in a driver crash that renders wireless unusable.

Expected results: Wireless should load fine.


Additional info:

Upgrading the iwl6000g2b-firmware to the 6th version fixes the error and the driver works as expected.

Comment 1 Jarkko Torvinen 2012-06-04 07:27:23 UTC
can confirm this:

iwlwifi 0000:01:00.0: Detected Intel(R) Centrino(R) Advanced-N 6230 AGN, REV=0xB0
iwlwifi 0000:01:00.0: request for firmware file 'iwlwifi-6000g2b-6.ucode' failed.
iwlwifi 0000:01:00.0: Firmware has old API version, expected v6, got v5.

Though 6230 works "ok", with new firmware (iwlwifi-6000g2b-6.ucode) this error goes away

Comment 2 John W. Linville 2012-06-04 18:16:59 UTC
Intel is pushing all of their iwlwifi firmware into the upstream linux-firmware project.  But for some reason, the fedora linux-firmware package is deleting those files in favor of the legacy individual iwl*-firmware packages.

The linux-firmware package should _not_ remove the iwlwifi firmware.  Instead it should be marked as obsoleting the exising iwl*-firmware packages.

Comment 3 Josh Boyer 2012-06-04 19:32:41 UTC
Justin was looking at which stand-alone firmware packages can be replaced by linux-firmware.  I think he's still working on that.

In the meantime, I'll submit an update that simply doesn't remove the iwl-* firmware for linux-firmware.

Comment 4 Josh Boyer 2012-06-04 19:44:48 UTC
Actually, hang on a minute.

So John, you own 6 out of the 9 iwlxxxx-firmware packages.  Basically, all of the ones that are relevant to any recent or new hardware.  If you knew Intel was pushing _all_ of their firmware into linux-firmware, why didn't you file a bug to coordinate the obsoletion of those packages with the linux-firmware package?

I mean, I guess this bug can suffice for that but your comment comes off a bit wrong to me.

Anyway, I'll work on getting this into rawhide tomorrow.  You'll need to retire all the iwlxxxx-firmware packages with Rel-Eng.

We can look at fixing this for F17 after rawhide is sorted out.

Comment 5 David Woodhouse 2012-06-04 22:38:56 UTC
If Fedora is shipping *any* separate firmware packages other than the linux-firmware package (except perhaps for splitting linux-firmware into subpackages), that seems like a bug. We shouldn't be doing that at all.

Comment 6 Josh Boyer 2012-06-04 22:59:11 UTC
(In reply to comment #5)
> If Fedora is shipping *any* separate firmware packages other than the
> linux-firmware package (except perhaps for splitting linux-firmware into
> subpackages), that seems like a bug. We shouldn't be doing that at all.

Right.  Justin is looking at that part.

Comment 7 Josh Boyer 2012-06-05 12:16:58 UTC
OK. I think I have the Provides/Obsoletes worked out for all the iwlXXXX-firmware packages:

[jwboyer@zod linux-firmware]$ sudo yum localupdate --nogpg noarch/linux-firmware-20120510-0.2.git375e954.fc17.noarch.rpm 
Loaded plugins: auto-update-debuginfo, langpacks, refresh-packagekit
Examining noarch/linux-firmware-20120510-0.2.git375e954.fc17.noarch.rpm: linux-firmware-20120510-0.2.git375e954.fc17.noarch
Marking noarch/linux-firmware-20120510-0.2.git375e954.fc17.noarch.rpm as an update to linux-firmware-20120206-0.3.git06c8f81.fc17.noarch
brew                                                     |  951 B     00:00     
rhpkg                                                    | 2.6 kB     00:00     
rpmfusion-free-updates                                   | 3.3 kB     00:00     
rpmfusion-free-updates-debuginfo                         | 2.7 kB     00:00     
updates                                                  | 4.5 kB     00:00     
updates-debuginfo/metalink                               |  14 kB     00:00     
Resolving Dependencies
--> Running transaction check
---> Package iwl1000-firmware.noarch 1:39.31.5.1-2.fc17 will be obsoleted
---> Package iwl3945-firmware.noarch 0:15.32.2.9-6.fc17 will be obsoleted
---> Package iwl4965-firmware.noarch 0:228.61.2.24-4.fc17 will be obsoleted
---> Package iwl5000-firmware.noarch 0:8.83.5.1_1-2.fc17 will be obsoleted
---> Package iwl5150-firmware.noarch 0:8.24.2.2-3.fc17 will be obsoleted
---> Package iwl6000-firmware.noarch 0:9.221.4.1-3.fc17 will be obsoleted
---> Package iwl6000g2a-firmware.noarch 0:17.168.5.3-2.fc17 will be obsoleted
---> Package iwl6050-firmware.noarch 0:41.28.5.1-4.fc17 will be obsoleted
---> Package linux-firmware.noarch 0:20120206-0.3.git06c8f81.fc17 will be updated
---> Package linux-firmware.noarch 0:20120510-0.2.git375e954.fc17 will be obsoleting
--> Finished Dependency Resolution

Dependencies Resolved

================================================================================
 Package
        Arch   Version
                      Repository                                           Size
================================================================================
Installing:
 linux-firmware
        noarch 20120510-0.2.git375e954.fc17
                      /linux-firmware-20120510-0.2.git375e954.fc17.noarch  37 M
     replacing  iwl1000-firmware.noarch 1:39.31.5.1-2.fc17
     replacing  iwl3945-firmware.noarch 15.32.2.9-6.fc17
     replacing  iwl4965-firmware.noarch 228.61.2.24-4.fc17
     replacing  iwl5000-firmware.noarch 8.83.5.1_1-2.fc17
     replacing  iwl5150-firmware.noarch 8.24.2.2-3.fc17
     replacing  iwl6000-firmware.noarch 9.221.4.1-3.fc17
     replacing  iwl6000g2a-firmware.noarch 17.168.5.3-2.fc17
     replacing  iwl6050-firmware.noarch 41.28.5.1-4.fc17

Transaction Summary
================================================================================
Install  1 Package

Total size: 37 M
Is this ok [y/N]: 


I'll commit this to git and get builds done for rawhide-F16 today.

Owners of the iwlXXXX-firmware packages will need to retire those with Rel-Eng.

Comment 8 Nicolas Chauvet (kwizart) 2012-06-05 12:37:43 UTC
Why theses single packages would be replaced ?
It's comes back from day to day that they would need replacement, but I disagree.

Firmware are sometime huge, specially when they are totally undeeded. Selecting the given set of firmware that is needed for a given system is very much usefull.

IIRC. Debian have a policy to split a firmware into another package if the size is big enought. This is a very good policy IMO.

Comment 9 Nicolas Chauvet (kwizart) 2012-06-05 12:43:34 UTC
(In reply to comment #5)
> If Fedora is shipping *any* separate firmware packages other than the
> linux-firmware package (except perhaps for splitting linux-firmware into
> subpackages), that seems like a bug. We shouldn't be doing that at all.

I would agree with subpackaging at least.
Sorting by component over vendor would be more appropriate. So that would give:
linux-dvb-firmware  / linux-wifi-firmware / linux-common-firmware and linux-firmware would install them all...

Comment 10 Josh Boyer 2012-06-05 12:44:15 UTC
(In reply to comment #8)
> Why theses single packages would be replaced ?

Because they're not going to get updated anymore and the upstream linux-firmware project contains the firmware they provide.

> Firmware are sometime huge, specially when they are totally undeeded.
> Selecting the given set of firmware that is needed for a given system is
> very much usefull.

Except we don't do that.  We install it all anyway in comps.  Otherwise I wouldn't have those packages on my system at all.

> IIRC. Debian have a policy to split a firmware into another package if the
> size is big enought. This is a very good policy IMO.

We can look at creating subpackages from linux-firmware, sure.

Comment 11 Josh Boyer 2012-06-05 12:46:20 UTC
(In reply to comment #9)
> (In reply to comment #5)
> > If Fedora is shipping *any* separate firmware packages other than the
> > linux-firmware package (except perhaps for splitting linux-firmware into
> > subpackages), that seems like a bug. We shouldn't be doing that at all.
> 
> I would agree with subpackaging at least.
> Sorting by component over vendor would be more appropriate. So that would
> give:
> linux-dvb-firmware  / linux-wifi-firmware / linux-common-firmware and
> linux-firmware would install them all...

Well, we can start with iwlXXXX-firmware subpackages.  Anything beyond that is for another time.  (And probably all pointless until comps is changed.)

Comment 12 John W. Linville 2012-06-05 13:33:19 UTC
Re: comment 4 -- sorry, I dropped the ball on the Fedora process.

Comment 13 Josh Boyer 2012-06-05 14:59:21 UTC
OK, so I think I have the subpackages created correctly now.  A yum localupdate of the results produces this:

================================================================================
 Package          Arch   Version
                            Repository                                     Size
================================================================================
Installing:
 iwl3945-firmware noarch 15.32.2.9-7.fc17
                            /iwl3945-firmware-15.32.2.9-7.fc17.noarch     206 k
     replacing  iwl3945-firmware.noarch 15.32.2.9-6.fc17
 iwl4965-firmware noarch 228.61.2.24-7.fc17
                            /iwl4965-firmware-228.61.2.24-7.fc17.noarch   243 k
     replacing  iwl4965-firmware.noarch 228.61.2.24-4.fc17
 iwl5000-firmware noarch 8.83.5.1_1-7.fc17
                            /iwl5000-firmware-8.83.5.1_1-7.fc17.noarch    1.0 M
     replacing  iwl5000-firmware.noarch 8.83.5.1_1-2.fc17
 iwl5150-firmware noarch 8.24.2.2-7.fc17
                            /iwl5150-firmware-8.24.2.2-7.fc17.noarch      389 k
     replacing  iwl5150-firmware.noarch 8.24.2.2-3.fc17
 iwl6000-firmware noarch 9.221.4.1-7.fc17
                            /iwl6000-firmware-9.221.4.1-7.fc17.noarch     504 k
     replacing  iwl6000-firmware.noarch 9.221.4.1-3.fc17
 iwl6000g2a-firmware
                  noarch 17.168.5.3-7.fc17
                            /iwl6000g2a-firmware-17.168.5.3-7.fc17.noarch 494 k
     replacing  iwl6000g2a-firmware.noarch 17.168.5.3-2.fc17
 iwl6050-firmware noarch 41.28.5.1-7.fc17
                            /iwl6050-firmware-41.28.5.1-7.fc17.noarch     971 k
     replacing  iwl6050-firmware.noarch 41.28.5.1-4.fc17
Updating:
 iwl100-firmware  noarch 39.31.5.1-7.fc17
                            /iwl100-firmware-39.31.5.1-7.fc17.noarch      389 k
 linux-firmware   noarch 20120510-0.3.git375e954.fc17
                            /linux-firmware-20120510-0.3.git375e954.fc17.noarch
                                                                           29 M

Transaction Summary
================================================================================
Install  7 Packages
Upgrade  2 Packages

Total size: 33 M
Is this ok [y/N]: 


Basically, all of the existing iwlXXXX-firmware packages were made subpackages with their corresponding version number, and a higher Release with the proper obsoletes.  There are even 4 new firmware packages to cover the addition of iwl105, iwl135, iwl2000, and iwl2030 Centrino adapters.

Does anyone have any issues with this before I go forward with it?  (The existing iwlXXXX-firmware pacakges will still need to be retired in rawhide.)

Comment 14 John W. Linville 2012-06-05 15:01:36 UTC
Looks great to me -- thanks, Josh!

Comment 15 Josh Boyer 2012-06-05 17:21:21 UTC
OK, committed and build in rawhide-F16.

I'll file updates for F16 and F17 after we make sure rawhide isn't totally hosed.

Comment 16 Fedora Update System 2012-06-06 21:09:39 UTC
linux-firmware-20120510-0.3.git375e954.fc17 has been submitted as an update for Fedora 17.
https://admin.fedoraproject.org/updates/linux-firmware-20120510-0.3.git375e954.fc17

Comment 17 Aaron W. Hsu 2012-06-07 06:23:38 UTC
Thank you for the quick response to this issue.

Comment 18 Fedora Update System 2012-06-07 23:13:44 UTC
Package linux-firmware-20120510-0.3.git375e954.fc17:
* should fix your issue,
* was pushed to the Fedora 17 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=updates-testing linux-firmware-20120510-0.3.git375e954.fc17'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-2012-9095/linux-firmware-20120510-0.3.git375e954.fc17
then log in and leave karma (feedback).

Comment 19 Aaron W. Hsu 2012-06-09 09:13:37 UTC
I have provided feedback there, but I can provide some here as well.  I note a couple of problems.  First, in the logs above, I do not see the iwl6000g2b-firmware package, which is the one that has the firmware that is out-dated.  Moreover, my run of the above package with the yum update command that you gave does update linux-firmware, but neither that package nor the iwl firmware packages have the version 6 firmware necessary for the wireless card to work, even after the update.

Comment 20 Josh Boyer 2012-06-09 13:37:33 UTC
(In reply to comment #19)
> I have provided feedback there, but I can provide some here as well.  I note
> a couple of problems.  First, in the logs above, I do not see the
> iwl6000g2b-firmware package, which is the one that has the firmware that is
> out-dated.  Moreover, my run of the above package with the yum update
> command that you gave does update linux-firmware, but neither that package
> nor the iwl firmware packages have the version 6 firmware necessary for the
> wireless card to work, even after the update.

All of the packages are provided.  They're in the build here:

http://koji.fedoraproject.org/koji/buildinfo?buildID=322160

As I said in bodhi, 'yum update linux-firmware' isn't enough to get the replacement subpackges.  You need to either just do a full 'yum update' or you need to do 'yum update \*-firmware' or 'yum update linux-firmware iwl\*-firmware'.

Comment 21 Aaron W. Hsu 2012-06-11 06:00:36 UTC
Okay, I see what you mean.  The instructions a few messages ago confused me.  If I update from the testing repo for the firmware, then I do indeed see what I expect.  Thanks.

Comment 22 Fedora Update System 2012-06-22 18:51:36 UTC
linux-firmware-20120510-0.3.git375e954.fc17 has been pushed to the Fedora 17 stable repository.  If problems still persist, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.