Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 147006

Summary: udev-096 and newer won't load firmware if hotplug is installed
Product: Gentoo Linux Reporter: Joe Jezak (RETIRED) <josejx>
Component: [OLD] Core systemAssignee: udev maintainers <udev-bugs>
Status: RESOLVED FIXED    
Severity: major CC: apoc1, base-system, brebs, chainsaw, chris, d.h.j.takken, eric.bosch, gentoo.bugs.10, gour, heiko, Heinrich.Nirschl, ixevix, jakub, mikomek, news, oxiroxt, rafalbilski, robbat2, sgtphou, stepankov, StormByte, wmbooth, wolf31o2, zarhan, zubkov318
Priority: High    
Version: unspecified   
Hardware: All   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---
Bug Depends on: 145809    
Bug Blocks: 126089, 159871    

Description Joe Jezak (RETIRED) gentoo-dev 2006-09-09 16:08:20 UTC
Since udev-096, it appears there's a conflict between hotplug and udev when loading firmware.  If you have hotplug installed, udev screws up when loading the firmware.  I can reliably reproduce this with bcm43xx.  Removing /etc/hotplug/firmware.agent or commenting out the firmware line in 50-udev.rules makes it work again.
Comment 1 Greg Kroah-Hartman (RETIRED) gentoo-dev 2006-09-09 17:22:04 UTC
got it...
Comment 2 Chris Paulson-Ellis 2006-09-22 12:52:00 UTC
...and you are likely to have hotplug installed, as it is an RDEPEND of bcm43xx-fwcutter, though I'm not sure why. Won't udev do the job?
Comment 3 Joe Jezak (RETIRED) gentoo-dev 2006-09-22 13:41:08 UTC
Since udev-096, yes, before that, the hotplug scripts handled it.
Comment 5 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 09:26:17 UTC
*** Bug 156631 has been marked as a duplicate of this bug. ***
Comment 6 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 09:27:59 UTC
*** Bug 156270 has been marked as a duplicate of this bug. ***
Comment 7 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 09:30:49 UTC
*** Bug 148194 has been marked as a duplicate of this bug. ***
Comment 8 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 09:32:58 UTC
*** Bug 142477 has been marked as a duplicate of this bug. ***
Comment 9 Jakub Moc (RETIRED) gentoo-dev 2006-11-29 09:50:29 UTC
*** Bug 145809 has been marked as a duplicate of this bug. ***
Comment 10 Joe Jezak (RETIRED) gentoo-dev 2006-11-29 13:06:33 UTC
*** Bug 154744 has been marked as a duplicate of this bug. ***
Comment 11 Kamil Gornik 2006-12-03 09:10:22 UTC
I have same issue with acx  (#5) after upgrade to udev-103. In last GWN (Nov 27th, 2006) there was section about it.
Probably hotplug is to be removed...
Comment 12 Jakub Moc (RETIRED) gentoo-dev 2006-12-11 13:49:51 UTC
*** Bug 157855 has been marked as a duplicate of this bug. ***
Comment 13 Jakub Moc (RETIRED) gentoo-dev 2006-12-19 02:48:08 UTC
*** Bug 144361 has been marked as a duplicate of this bug. ***
Comment 14 Antti Mäkelä 2006-12-19 04:02:48 UTC
I'll mention here as well that I was able to fix this issue by rolling back to pre-096 udev, and then upgrading to 103 with CONFIG_PROTECT="-*" set. The upgrade process apparently left some files from the old version into /etc/ which messed up udev-103.
Comment 15 Jakub Moc (RETIRED) gentoo-dev 2006-12-27 11:45:22 UTC
*** Bug 159234 has been marked as a duplicate of this bug. ***
Comment 16 David Carlos Manuelda 2007-01-12 01:24:14 UTC
Any new on this front?
Comment 17 Matthias Schwarzott gentoo-dev 2007-01-15 16:08:07 UTC
udev-103-r1 no longer calls scripts in hotplug dir.
Comment 18 Robin Johnson archtester Gentoo Infrastructure gentoo-dev Security 2007-01-16 08:58:13 UTC
Please port firmware.agent to udev.
Comment 19 Alexander Zubkov 2007-01-16 09:07:06 UTC
(In reply to comment #18)
> Please port firmware.agent to udev.
> 

The problem appeared because there is already firmware agent in udev and it conflicts with hotplug agent doing same work at the same time.
Comment 20 FieldySnuts 2007-01-24 06:09:49 UTC
Using ipw2200 network drivers, I ran into this fun issue using udev-103. I had never seen this issue prior to that. Taking a route similar to comment #14, i did a quickpkg udev && CONFIG_PROTECT="-*" emerge -C udev && rm /etc/udev/rules.d/* && emerge udev && udevstart    and I could finally load my ipw2200 drivers. I was seeing the issues found in Bug #87103.

If you go this route, be sure you back up files first. It's easy to forget that you may have dropped some custom rules into their own file in /etc/udev/rules.d .

It would be nice if folks didn't have to do this, but I don't really understand all this anyway, so that's sort of an uneducated comment, I'll admit.

Cheers.

Portage 2.1.2-r2 (default-linux/x86/2006.1/desktop, gcc-4.1.1, glibc-2.4-r4, 2.6.20-rc4 i686)
=================================================================
System uname: 2.6.20-rc4 i686 Intel(R) Pentium(R) M processor 1.86GHz
Gentoo Base System version 1.12.6
Timestamp of tree: Wed, 24 Jan 2007 05:20:01 +0000
distcc 2.18.3 i686-pc-linux-gnu (protocols 1 and 2) (default port 3632) [disabled]
ccache version 2.4 [enabled]
dev-java/java-config: 1.3.7, 2.0.31
dev-lang/python:     2.4.3-r4
dev-python/pycrypto: 2.0.1-r5
dev-util/ccache:     2.4-r6
sys-apps/sandbox:    1.2.18.1
sys-devel/autoconf:  2.13, 2.61
sys-devel/automake:  1.4_p6, 1.5, 1.6.3, 1.7.9-r1, 1.8.5-r3, 1.9.6-r2, 1.10
sys-devel/binutils:  2.17
sys-devel/gcc-config: 1.3.14
sys-devel/libtool:   1.5.22
virtual/os-headers:  2.6.19.2-r1
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CBUILD="i686-pc-linux-gnu"
CFLAGS="-Os -march=pentium-m -pipe"
CHOST="i686-pc-linux-gnu"
CONFIG_PROTECT="/etc /usr/NX/etc /usr/NX/home /usr/kde/3.5/env /usr/kde/3.5/share/config /usr/kde/3.5/shutdown /usr/share/X11/xkb /usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ /usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/share/texmf/xdvi/"
CONFIG_PROTECT_MASK="/etc/env.d /etc/env.d/java/ /etc/gconf /etc/java-config/vms/ /etc/revdep-rebuild /etc/terminfo"
CXXFLAGS="-Os -march=pentium-m -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="autoconfig ccache distlocks metadata-transfer sandbox sfperms strict"
GENTOO_MIRRORS="http://gentoo.chem.wisc.edu/gentoo/ ftp://gentoo.chem.wisc.edu/gentoo/ ftp://gentoo.mirrors.tds.net/gentoo http://mirror.datapipe.net/gentoo"
LINGUAS="en"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --delete-after --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY="/usr/local/portage"
SYNC="rsync://rsync.namerica.gentoo.org/gentoo-portage"
USE="3dnow X a52 alsa berkdb bitmap-fonts bzip2 cairo cdr chroot cli cracklib crypt dbus dlloader dri dv dvd dvdr dvdread eds emboss encode fam ffmpeg firefox flac fortran gdbm gif gpm gtk gtk2 hal iconv isdnlog jpeg kde kdeenablefinal libg++ mad mikmod mmx mp3 mpeg ncurses network nls nptl nptlonly ogg opengl oss pam pcre pdflib perl png ppds pppd pwdb python qt3 qt4 quicktime readline reflection sdl session spell spl sse ssl svg theora tiff truetype truetype-fonts type1-fonts udev unicode usb vorbis win32codecs x86 xml xml2 xorg xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mulaw multi null plug rate route share shm softvol" ELIBC="glibc" INPUT_DEVICES="keyboard mouse synaptics" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="en" USERLAND="GNU" VIDEO_CARDS="ati radeon fglrx"
Unset:  CTARGET, EMERGE_DEFAULT_OPTS, INSTALL_MASK, LANG, LC_ALL, LDFLAGS, PORTAGE_RSYNC_EXTRA_OPTS
Comment 21 Eric Bosch 2007-01-24 16:17:57 UTC
I have an odd behaviour going on regarding this with ivtv and my Hauppauge 350 card.  Upon a system reboot, the ivtv module loads, however the firmware load is failing every time:
Jan 24 07:59:17 saruman Linux video capture interface: v2.00
Jan 24 07:59:17 saruman ivtv:  ==================== START INIT IVTV ====================
Jan 24 07:59:17 saruman ivtv:  version 0.9.1 (tagged release) loading
Jan 24 07:59:17 saruman ivtv:  Linux version: 2.6.19-gentoo-r4 SMP preempt mod_unload PENTIUM4 REGPARM
Jan 24 07:59:17 saruman ivtv:  In case of problems please include the debug info between
Jan 24 07:59:17 saruman ivtv:  the START INIT IVTV and END INIT IVTV lines, along with
Jan 24 07:59:17 saruman ivtv:  any module options, when mailing the ivtv-users mailinglist.
Jan 24 07:59:17 saruman ivtv0: Autodetected Hauppauge card (cx23415 based)
Jan 24 07:59:17 saruman ACPI: PCI Interrupt 0000:03:0d.0[A] -> GSI 21 (level, low) -> IRQ 23
Jan 24 07:59:17 saruman pwc: Philips webcam module version 10.0.12-unofficial loaded.
Jan 24 07:59:17 saruman pwc: Supports Philips PCA645/646, PCVC675/680/690, PCVC720[40]/730/740/750 & PCVC830/840.
Jan 24 07:59:17 saruman pwc: Also supports the Askey VC010, various Logitech Quickcams, Samsung MPC-C10 and MPC-C30,
Jan 24 07:59:17 saruman pwc: the Creative WebCam 5 & Pro Ex, SOTEC Afina Eye and Visionite VCS-UC300 and VCS-UM100.
Jan 24 07:59:17 saruman pwc: Trace options: 0x0001
Jan 24 07:59:17 saruman pwc: Logitech QuickCam 4000 Pro USB webcam detected.
Jan 24 07:59:17 saruman pwc: Registered as /dev/video0.
Jan 24 07:59:17 saruman usbcore: registered new interface driver Philips webcam
Jan 24 07:59:17 saruman ivtv0: unable to open firmware v4l-cx2341x-enc.fw (must be 262144 bytes)
Jan 24 07:59:17 saruman ivtv0: did you put the firmware in the hotplug firmware directory?
Jan 24 07:59:17 saruman ivtv0 warning: failed loading encoder firmware
Jan 24 07:59:17 saruman ivtv0 warning: Error loading firmware -3!
Jan 24 07:59:17 saruman ivtv0: Error -3 initializing firmware.
Jan 24 07:59:17 saruman Trying to free already-free IRQ 23
Jan 24 07:59:17 saruman ivtv0: Error -12 on initialization
Jan 24 07:59:17 saruman ivtv: probe of 0000:03:0d.0 failed with error -12
Jan 24 07:59:17 saruman ivtv:  ====================  END INIT IVTV  ====================

The strange part is if I rmmod ivtv, cx2341x modules and then perform modprobe ivtv, then everything loads properly the next time around:

Jan 24 08:01:14 saruman ivtv:  ==================== START INIT IVTV ====================
Jan 24 08:01:14 saruman ivtv:  version 0.9.1 (tagged release) loading
Jan 24 08:01:14 saruman ivtv:  Linux version: 2.6.19-gentoo-r4 SMP preempt mod_unload PENTIUM4 REGPARM
Jan 24 08:01:14 saruman ivtv:  In case of problems please include the debug info between
Jan 24 08:01:14 saruman ivtv:  the START INIT IVTV and END INIT IVTV lines, along with
Jan 24 08:01:14 saruman ivtv:  any module options, when mailing the ivtv-users mailinglist.
Jan 24 08:01:14 saruman ivtv0: Autodetected Hauppauge card (cx23415 based)
Jan 24 08:01:14 saruman ivtv0: loaded v4l-cx2341x-enc.fw firmware (262144 bytes)
Jan 24 08:01:14 saruman ivtv0: loaded v4l-cx2341x-dec.fw firmware (262144 bytes)
Jan 24 08:01:15 saruman tveeprom 4-0050: Hauppauge model 48132, rev J333, serial# 6546632
Jan 24 08:01:15 saruman tveeprom 4-0050: tuner model is Temic 4039FR5 (idx 33, type 21)
Jan 24 08:01:15 saruman tveeprom 4-0050: TV standards NTSC(M) (eeprom 0x08)
Jan 24 08:01:15 saruman tveeprom 4-0050: audio processor is MSP4448 (idx 27)
Jan 24 08:01:15 saruman tveeprom 4-0050: decoder processor is SAA7115 (idx 19)
Jan 24 08:01:15 saruman tveeprom 4-0050: has radio, has IR remote
Jan 24 08:01:15 saruman ivtv0: Autodetected Hauppauge WinTV PVR-350
Jan 24 08:01:15 saruman tuner 4-0061: chip found @ 0xc2 (ivtv i2c driver #0)
Jan 24 08:01:15 saruman saa7115 4-0021: saa7115 found (1f7115d0e100000) @ 0x42 (ivtv i2c driver #0)
Jan 24 08:01:15 saruman saa7127 4-0044: saa7127 found @ 0x88 (ivtv i2c driver #0)
Jan 24 08:01:15 saruman msp3400 4-0040: MSP4448G-A2 found @ 0x80 (ivtv i2c driver #0)
Jan 24 08:01:15 saruman msp3400 4-0040: MSP4448G-A2 supports radio, mode is autodetect and autoselect
Jan 24 08:01:15 saruman ivtv0: Encoder revision: 0x02050032
Jan 24 08:01:15 saruman ivtv0: Decoder revision: 0x02020023
Jan 24 08:01:15 saruman ivtv0: Registered device video1 for encoder MPEG
Jan 24 08:01:15 saruman ivtv0: Registered device video32 for encoder YUV
Jan 24 08:01:15 saruman ivtv0: Registered device vbi0 for encoder VBI
Jan 24 08:01:15 saruman ivtv0: Registered device video24 for encoder PCM audio
Jan 24 08:01:15 saruman ivtv0: Registered device radio0 for encoder radio
Jan 24 08:01:15 saruman ivtv0: Registered device video16 for decoder MPEG
Jan 24 08:01:15 saruman ivtv0: Registered device vbi8 for decoder VBI
Jan 24 08:01:15 saruman ivtv0: Registered device vbi16 for decoder VOUT
Jan 24 08:01:15 saruman ivtv0: Registered device video48 for decoder YUV
Jan 24 08:01:15 saruman ivtv0: loaded v4l-cx2341x-init.mpg firmware (155648 bytes)
Jan 24 08:01:15 saruman tuner 4-0061: type set to 21 (Temic NTSC (4039 FR5))
Jan 24 08:01:16 saruman ivtv0: Initialized Hauppauge WinTV PVR-350, card #0
Jan 24 08:01:16 saruman ivtv:  ====================  END INIT IVTV  ====================

Both Hotplug and Coldplug have been removed from the system, fully relying on udev to handle the process.
Comment 22 Matthias Schwarzott gentoo-dev 2007-01-24 16:26:56 UTC
(In reply to comment #21)
> I have an odd behaviour going on regarding this with ivtv and my Hauppauge 350
> card.  Upon a system reboot, the ivtv module loads, however the firmware load
> is failing every time:
> 
....
> Both Hotplug and Coldplug have been removed from the system, fully relying on
> udev to handle the process.
> 
Which version of udev do you have installed?
and can you perhaps attach (!) the output of udevmonitor --env.

Comment 23 Eric Bosch 2007-01-24 21:44:22 UTC
I was running udev 103, however before I saw the last post, I bit the bullet, upgraded udev to 104-r2, upgraded baselayout to 1.12.9, which in turn upgraded module-init-tools, which also emerged virtual/init.  After these upgrades completed it appears everything is working perfectly now!!
Comment 24 Michael J. Monte 2007-01-25 01:20:41 UTC
I just upgraded from udev-103 to udev-104-r2 and everything is right as rain now.
Comment 25 Matthias Schwarzott gentoo-dev 2007-01-26 15:41:41 UTC
As it seems to work now, closing it.
Comment 26 Jakub Moc (RETIRED) gentoo-dev 2007-01-29 09:36:18 UTC
*** Bug 164155 has been marked as a duplicate of this bug. ***
Comment 27 Jakub Moc (RETIRED) gentoo-dev 2007-02-05 21:58:31 UTC
*** Bug 165505 has been marked as a duplicate of this bug. ***