Hello, I am reporting strange problems with my Mandrake 8.2 installation on my Intel PC - maybe the key is with devfsd (Mandrake version is devfsd-1.3.25-1.1mdk). I am a 10-years Unix-user, and a 2 years part-time Unix/Linux admin, but I really don't know devfsd.
So I have been reporting several symptoms for several weeks/months : - sometimes after logging, the OS partially hangs : ps -ef does not complete, and I need to reboot - after the second reboot, the OS always works (I mean, ps -ef displays completely); but always, I have modprobe <defunct> and this modprobe is the son of devfsd (which I unfortunately don't know :-( BTW, the previous partial ps -ef never includes this modprobe <defunct> - in /var/log/messages, I always have at boot: devfsd: error calling: symlink in GLOBAL devfsd[70]: error calling: "unlink" in "GLOBAL" Finally, one strange symptom, that I did not connect to devfsd at the beginning : while scrolling with the wheel in galeon overloaded with maybe 20 or 30 tabs in 6 windows (not konqueror or netscape or else) regularly the session crashed, bringing me back to the login window, and leaving on the virtual consoles (I have only two) a white square/rectangle, 1 inch for each side nearly, including a fixed ugly cursor arrow. Gradually, I became sure that that the wheel caused the crash. Today, I crashed the session while scrolling in evolution, moving the wheel in evolution for the first time in the session, just the first step of the forward move of the wheel; I just migrated to evolution these days. I spent today some time to try to go a bit deeper; I read the man pages of devfsd and devfsd.conf, discovered the startup of devfsd in /etc/rc.d/rc.sysinit and also the one in /etc/rc.d/init.d. As I did not understand clearly the use of the former, I removed the symlink in /etc/rc5.d and rebooted. Now I seem to be able to scroll with the wheel as much as I want in galeon and evolution, and the scroll even seems to be very light and rapid. Some more tests : devfsd, even with the defunct modprobe, dies quietly with pkill devfsd : and the defunct modprobe disappears ! Then I restart it by hand (/sbin/devfsd /dev) and rerun /etc/rc.d/init.d/devfsd start by hand : no modprobe defuncts !!! I don't understand ... As devfsd is S99devfsd in /etc/rc5.d with some others (linuxconf, medusa, local), I renumbered these so that devfsd is really the last one : no use, I still got modprobe <defunct> ... Unfortunately, I did not see anything useful in the logs (/var/log). I browsed in Google, but I did not see anyone with my problem. Does somebody have an idea ? I am pasting at the end my devfsd.conf : I commented in several USB lines (what tool generated them ???) so it's now identical to the original one from the rpm (excepted some spaces here and there) Best regards -- Robert Grasso @home # Sample /etc/devfsd.conf configuration file. # Richard Gooch <[EMAIL PROTECTED]> 17-FEB-2002 # # Enable full compatibility mode for old device names. You may comment these # out if you don't use the old device names. Make sure you know what you're # doing! REGISTER .* MKOLDCOMPAT UNREGISTER .* RMOLDCOMPAT # You may comment out the above and uncomment the following if you've # configured your system to use the original "new" devfs names or the really # new names #REGISTER ^vc/ MKOLDCOMPAT #UNREGISTER ^vc/ RMOLDCOMPAT #REGISTER ^pty/ MKOLDCOMPAT #UNREGISTER ^pty/ RMOLDCOMPAT #REGISTER ^misc/ MKOLDCOMPAT #UNREGISTER ^misc/ RMOLDCOMPAT # You may comment these out if you don't use the original "new" names REGISTER .* MKNEWCOMPAT UNREGISTER .* RMNEWCOMPAT # Enable module autoloading. You may comment this out if you don't use # autoloading LOOKUP .* MODLOAD # Uncomment the following if you want to set the group to "tty" for the # pseudo-tty devices. This is necessary so that mesg(1) can later be used to # enable/disable talk requests and wall(1) messages. REGISTER ^pty/s.* PERMISSIONS -1.tty 0600 REGISTER ^pts/.* PERMISSIONS -1.tty 0600 # # Uncomment this if you want permissions to be saved and restored # Do not do this for pseudo-terminal devices REGISTER ^pt[sy] IGNORE CREATE ^pt[sy] IGNORE CHANGE ^pt[sy] IGNORE DELETE ^pt[sy] IGNORE REGISTER .* COPY /lib/dev-state/$devname $devpath CREATE .* COPY $devpath /lib/dev-state/$devname CHANGE .* COPY $devpath /lib/dev-state/$devname DELETE .* CFUNCTION GLOBAL unlink /lib/dev-state/$devname RESTORE /lib/dev-state # # Uncomment this if you want the old /dev/cdrom symlink REGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL mksymlink $devname cdrom UNREGISTER ^cdroms/cdrom0$ CFUNCTION GLOBAL unlink cdrom REGISTER ^v4l/video0$ CFUNCTION GLOBAL symlink v4l/video0 video UNREGISTER ^v4l/video0$ CFUNCTION GLOBAL unlink video # ALSA stuff #LOOKUP snd MODLOAD ACTION snd # Manage USB mouse #REGISTER ^input/mouse0$ CFUNCTION GLOBAL mksymlink input/mouse0 usbmouse #UNREGISTER ^input/mouse0$ CFUNCTION GLOBAL unlink usbmouse # dynamic desktop and co #REGISTER .*/part.* EXECUTE /etc/dynamic/scripts/part.script add $devpath #UNREGISTER .*/part.* EXECUTE /etc/dynamic/scripts/part.script del $devpath REGISTER v4l/video.* EXECUTE /etc/dynamic/scripts/webcam.script add $devpath UNREGISTER v4l/video.* EXECUTE /etc/dynamic/scripts/webcam.script del $devpath REGISTER usb/scanner.* EXECUTE /etc/dynamic/scripts/scanner.script add $devpath UNREGISTER usb/scanner.* EXECUTE /etc/dynamic/scripts/scanner.script del $devpath REGISTER usb/rio500 EXECUTE /etc/dynamic/scripts/rio500.script add $devpath UNREGISTER usb/rio500 EXECUTE /etc/dynamic/scripts/rio500.script del $devpath REGISTER usb/tts/[13579] EXECUTE /etc/dynamic/scripts/visor.script add $devpath UNREGISTER usb/tts/[13579] EXECUTE /etc/dynamic/scripts/visor.script del $devpath REGISTER (usb/lp.*|printers/.*) EXECUTE /etc/dynamic/scripts/lp.script add $devpath UNREGISTER (usb/lp.*|printers/.*) EXECUTE /etc/dynamic/scripts/lp.script del $devpath # Uncomment this to let PAM manage devfs REGISTER .* CFUNCTION /lib/security/pam_console_apply_devfsd.so pam_console_apply_single $devpath # Uncomment this to manage USB mouse #REGISTER ^input/mouse0$ CFUNCTION GLOBAL mksymlink $devname usbmouse #UNREGISTER ^input/mouse0$ CFUNCTION GLOBAL unlink usbmouse #REGISTER ^input/mice$ CFUNCTION GLOBAL mksymlink $devname usbmouse #UNREGISTER ^input/mice$ CFUNCTION GLOBAL unlink usbmouse # If you have removable media and want to force media revalidation when looking # up new or old compatibility names, uncomment the following lines # SCSI NEWCOMPAT /dev/sd/* names LOOKUP ^(sd/c[0-9]+b[0-9]+t[0-9]+u[0-9]+)p[0-9]+$ EXECUTE /bin/dd if=$mntpnt/\1 of=/dev/null count=1 # SCSI OLDCOMPAT /dev/sd?? names LOOKUP ^(sd[a-z]+)[0-9]+$ EXECUTE /bin/dd if=$mntpnt/\1 of=/dev/null count=1 # IDE NEWCOMPAT /dev/ide/hd/* names LOOKUP ^(ide/hd/c[0-9]+b[0-9]+t[0-9]+u[0-9]+)p[0-9]+$ EXECUTE /bin/dd if=$mntpnt/\1 of=/dev/null count=1 # IDE OLDCOMPAT /dev/hd?? names LOOKUP ^(hd[a-z])[0-9]+$ EXECUTE /bin/dd if=$mntpnt/\1 of=/dev/null count=1 # Include package-generated files from /etc/devfs/conf.d OPTIONAL_INCLUDE /etc/devfs/conf.d/
Want to buy your Pack or Services from MandrakeSoft? Go to http://www.mandrakestore.com
