Bug 179217
Summary: | udev-071 and up breaks ipw2200 firmware loading | ||
---|---|---|---|
Product: | [Fedora] Fedora | Reporter: | Anton Keks <anton> |
Component: | udev | Assignee: | Harald Hoyer <harald> |
Status: | CLOSED CURRENTRELEASE | QA Contact: | |
Severity: | high | Docs Contact: | |
Priority: | medium | ||
Version: | 4 | CC: | aaron, dbaron, dedourek, fabrice, fedora, kellermg, mozilla_bugs, netllama, redhat, redhat-bugs2eran, rh-bugzilla, tjb, wn67 |
Target Milestone: | --- | ||
Target Release: | --- | ||
Hardware: | i386 | ||
OS: | Linux | ||
Whiteboard: | |||
Fixed In Version: | udev-071-0.FC4.2 | Doc Type: | Bug Fix |
Doc Text: | Story Points: | --- | |
Clone Of: | Environment: | ||
Last Closed: | 2006-04-28 09:32:40 UTC | Type: | --- |
Regression: | --- | Mount Type: | --- |
Documentation: | --- | CRM: | |
Verified Versions: | Category: | --- | |
oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
Cloudforms Team: | --- | Target Upstream Version: | |
Embargoed: |
Description
Anton Keks
2006-01-28 11:58:56 UTC
The bug about driver instability is 178959. Maybe it is somehow related to this problem as well. Same problem with udev-071 on a Dell Latitude D410 and kernel 2.6.14-1.1656 In this case it is ipw-2.2 that fails to load. (udev-058 has no problem with this kernel. With 2.6.15-1.1823 synaptics was broken but ipw-2.4 loaded OK) The 2.6.15 kernels requires udev-071 or higher. udev-071 loads firmware and conflicts with kernel/hotplug firmware loading. The solution # cd /etc/hotplug # mv firmware.agent firmware.agent.orig Instead of the firmware.agent, try removing: ACTION=="add", SUBSYSTEM=="firmware", ENV{FIRMWARE}=="*", \ RUN+="/sbin/firmware_helper" from /etc/udev/rules.d/50-udev.rules.. Does that work, too? Yes, it worked, after reboot. I've got a Dell Inspiron 600m with the 1824 kernel. Like above, with new kernel and old udev, ipw2200 worked but synaptics did not. Now with new kernel and new udev, ipw2200 won't load the firmware. I've tried renaming /sbin/firmware_helper, renaming /etc/hotplug/firmware.agent, and commenting out the udev rules and none of them worked for me. Until I went to submit this, got a mid-air collision with comment #5, tried rebooting instead of just killing udevd and it worked. So yes, commenting out the udev rules also works for me. It didn't work for me... Maybe the reason is that I tried with udev-078-8 from development. I had to reverse to udev-058 again. Now, after a lot of trouble, I was able to verify that udev-071-0 doesn't work either, but symptoms are now different: before ifconfig was saying that there was no such device, now ifconfig shows mac address correctly, but iwconfig says that no wireless extensions are available. dmesg | grep ipw: ipw2200: Detected Intel PRO/Wireless 2200BG Network Connection ipw2200: ipw-2.4-boot.fw load failed: Reason -2 ipw2200: Unable to load firmware: -2 ipw2200: failed to register network device ipw2200: probe of 0000:01:0d.0 failed with error -5 udev-071-0.FC4.2 released today seems to fix this for me. I'm having a problem that sounds very similar to this one. There are more details in bug 179982, but basically i'm using a linksys WPC11v3 pcmcia wifi card which as worked fine up until the latest kernel/udev update in FC4, and now the card doesn't work at all. Instead I see this error repeating over & over again when I attempt to bring up eth0: cannot change name of wlan0 to devWXYZ: File exists where WXYZ seems to be a random number that changes each time the error appears (and it appears many times per second, but gradually slows down over time). Same problem here: ipw2200 firmware doesn't load) with vanilla 2.6.15.1 and udev-071-0.FC4.2. The workarounds don't work. The problem occurs whether or not /etc/hotplug/firmware.agent is renamed (comment 3) and whether or not the firmware-related lines in /etc/udev/rules.d/50-udev.rules are disabled (comment 4). I tried all 4 cases, rebooting for each. The same kernel and firmware worked flawlessly with udev-0.58-1.0.FC4.1. Ditto with an Hauppauge Nexus-S DVB card and vanilla 2.6.15.1. strac'ing /sbin/firmware_helper during executing shows | execve("/sbin/firmware_helper", ["/sbin/firmware_helper", "firmware"], [/* 13 vars */]) = 0 | ... | open("/sys//class/firmware/0000:02:01.0/loading", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 ENOENT (No such file or directory) | open("/lib/firmware/dvb-ttpci-01.fw", O_RDONLY) = 3 | fstat64(3, {st_mode=S_IFREG|0644, st_size=239892, ...}) = 0 | mmap2(NULL, 241664, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0xb7fb5000 | read(3, "AVFWq\214xF\0\0\1 \345\237\360\34\341\260\360\16\345\237"..., 239892) = 239892 | close(3) = 0 | open("/sys//class/firmware/0000:02:01.0/data", O_RDWR) = -1 ENOENT (No such file or directory) | close(-1) = -1 EBADF (Bad file descriptor) | open("/sys//class/firmware/0000:02:01.0/loading", O_WRONLY|O_CREAT|O_TRUNC, 0666) = -1 ENOENT (No such file or directory) env is | ACTION=add | DEVPATH=/class/firmware/0000:02:01.0 | FIRMWARE=dvb-ttpci-01.fw | PHYSDEVBUS=pci | PHYSDEVDRIVER=dvb | PHYSDEVPATH=/devices/pci0000:00/0000:00:1e.0/0000:02:01.0 | SEQNUM=978 | SUBSYSTEM=firmware | TIMEOUT=10 | UDEVD_EVENT=1 | UDEV_LOG=3 Downgrading to udev-058-1.0.FC4.1 makes things work again. /sys does not contain files named 'data' or 'loading'. For my problem downgrading to udev-0.58 also fixes the problem. >ACTION=="add", SUBSYSTEM=="firmware", ENV{FIRMWARE}=="*", \
> RUN+="/sbin/firmware_helper"
Removing the above lines does not work for me for the dvb_ttpci module, in
fact I even had to replace the "RUN+=" by "RUN=", otherwise modprobe dvb_ttpci
just hung for some time trying to modprobe some alias because of the following
rule in 50-udev.rules:
ACTION=="add", SUBSYSTEM=="?*", MODALIAS=="?*", RUN+="/sbin/modprobe
$modalias"
I had problems similar to those described here due to recent kernel updates. kernel-2.6.14-1.1656_FC4 was my old working kernel, I hit this problem when trying to use kernel-2.6.15-1.1830_FC4 and gave up, but then after installing kernel-2.6.15-1.1831_FC4 I fixed it when I noticed that the error message was like that in comment 8, but the firmware I had installed was ipw-2.2, not ipw-2.4. The problem went away when I installed the 2.4 version of the firmware from http://ipw2200.sourceforge.net/ ; the 2.2 version had worked with prior kernels. dbaron, that issue is unrelated to the one discussed here; you got that because 2.6.15 merged in a new version of the ipw2200 driver, which needs the 2.4 firmware. BTW, following up on comment 11: downgrading udev to 058-1.0.FC4.1 fixes the problem (no other changes). Please change the priority to high, because erroneous rpms are now in the released repository, breaking ipw2200 for anyone, who runs 'yum update'. I have tried with the latest released kernel-2.6.15-1.1831 and udev-071-0.FC4.2. This combination doesn't work. No hacks listed in other comments help :-( Possibly users, who are upgrading to the udev-071 have to do something with the hotplug rpm? Is it deprecated? For now, I have to downgrade, again... Workaround: rename /etc/hotplug/firmware.agent. Interestingly enough, but after the downgrade to udev-058, I have tried 'yum upgrade', which have installed the udev-071 back as well as updated a lot of other packages. After a reboot, firmware have been loaded successfully. I still have hotplug installed and /etc/hotplug/firmware.agent has it's original name. Of course, the released udev-071-0.FC4.2 have the abovementioned lines in 50-udev.rules commented out, but this is the same it was before... cat /proc/sys/kernel/hotplug gives the '/sbin/udevsend' as expected. In the meantime, I have found a workaround on the ipw2200.sf.net for a very similar problem: echo 100 > /sys/class/firmware/timeout I have 60 there now, and it works. Probably these problems are not related. Sorry for not being able to give more useful info, feel free to ask questions. (In reply to comment #15) With kernel-2.6.15-1.1831_FC4 and udev-071-0.FC4.2, updating the firmware from 2.2 to 2.4 worked for me. Problem solved here by upgrading to vanilla kernel 2.6.15.4 + ieee80211 1.1.12 + ipw2200 1.0.13 and udev-0.71-0.FC4.3. I dare say it stopped working again, with kernels 2.6.16, udev 0.71, ieee80211 1.1.14 and the latest and greatest ipw2200 firmware and modules. None of the hacks described in the thread help. Firmare can not be loaded no matter what I try. |