Probleme mit udev und hal auf Suse 10.3 rc1

Software besorgen und anwenden
Post Reply
Message
Author
keiner

Probleme mit udev und hal auf Suse 10.3 rc1

#1 Post by keiner »

Ich habe ein Update auf die rc1 von Suse 10.3 gemacht und alles läuft soweit gut. Probleme gibt es nur mit udev und hal, wenn beim Booten /etc/init.d/boot.udev gestartet wird, kommen unzählige "rtc_cmos: probe of 00:02 failed with error -16" Meldungen, minutenlang. Dann geht das Booten normal weiter und alles funktioniert. Aber zwei Programme schlucken fast den gesamten Prozessor. Einmal udevd und einmal hald. In /var/log/messages stehen seitenweise solche Einträge:

tux kernel: rtc_cmos: probe of 00:02 failed with error -16
tux syslog-ng[3997]: last message repeated 15 times
tux kernel: rtc_cmos: probe of 00:02 failed with error -16
tux syslog-ng[3997]: last message repeated 11 times
tux kernel: rtc_cmos: probe of 00:02 failed with error -16
tux syslog-ng[3997]: last message repeated 68 times

Im Moment löse ich es so, dass ich in meiner .profile diese Zeilen eingetragen habe:
sudo /sbin/udevcontrol max_childs_running=1
sudo /sbin/udevcontrol max_childs=2

Erst hatte ich sie in einem Skript unter /etc/init.d/rc5.d/S99udev verlinkt (ohne sudo davor) aber da hatten sie keinen Effekt. Leider funktioniert udevd so nur halb, DVDs und CDs werden automatisch erkannt und gemountet, Karten im Kartenleser, Kamera und Handy (alles USB) aber nicht.
Hat jemand eine Idee was da schiefgelaufen ist? Die udev-Regeln habe ich schon durchgesehen, da findet sich nichts. Das Model rtc_cmos ist laut lsmod geladen.

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#2 Post by Janka »

Wenn ich das rtc-cmos_Modul einbinde, bekommen ich auch diese Fehlermeldung in dmesg.

Code: Select all

rtc_cmos 00:04: rtc core: registered rtc_cmos as rtc0
rtc_cmos: probe of 00:04 failed with error -16
Sonst passiert allerdings bei mir (SuSE10.2) nichts schlimmes.

Der Rechner läuft aber glücklicherweise auch ohne diesen Treiber. Versuch doch mal, ihn in /etc/modprobe.conf.local mittels

Code: Select all

install rtc_cmos /bin/true
abzuschalten.

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

keiner

#3 Post by keiner »

Vielen Dank, es geht auch ohne rtc_cmos, die nervenden Fehlermeldungen sind jetzt weg. Der CPU-Hunger der Hal- und Udev-Daemons aber leider noch nicht. Es laufen so etwa 30 udevd Prozesse gleichzeitig, ist das normal? Und in /sbin/hwup wird udevsettle aufgerufen und müsste dann eigentlich warten, bis sich der udevd nach jeder gefundenen Hardware wieder "beruhigt" hat. Aber es wird ohne Pfad aufgerufen und schlägt daher fehlt. Komisch, daß es überhaupt geht. Ist das so beabsichtigt oder ein Bug? Meine Kenntnisse sind da leider nicht so gut.

User avatar
Janka
Posts: 3585
Joined: 11. Feb 2006 19:10

#4 Post by Janka »

Nein, es sollte nur ein udevd laufen. Wenn du den Fehler schon loalisiert zu haben glaubst, kannst du daran aber ja mal drehen (und Bugreport an SuSE schicken!).

Janka
Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie.

keiner

#5 Post by keiner »

Bevor ich einen Bug lostrete, will ich sicher sein, dass da auch einer ist. Die Leute haben wichtigeres zu tun, als Geisterbugs zu jagen. Durch das Upgrade ist die Hardwarekonfiguration komplett auf udev-Regeln umgestellt worden, die aus den vorherigen /etc/sysconfig/hardware und teilweise /etc/sysconfig/network Konfigurationen zusammengestellt worden. Dabei ist wahrscheinlich etwas schiefgegangen, ich vermute, das ich vergessen habe, zwischen zwei Upgrades mal neuzustarten, da kein Kernelupgrade dabei war. Ich vermute, dass die geladenen Module für die Konfigurationserstellung berücksichtigt werden und darum vergessen worden. Ich habe vor dem ersten Upgrade auf den rc1 Factory-Zweig ein Backup gemacht, vielleicht kann ich ja aus den Unterschieden in /etc schlauwerden.

keiner

#6 Post by keiner »

Gefunden!
Hat ein Weilchen gedauert, aber ich habe rausgekriegt, woran es lag, bzw. wie man die Symptome loswird: In /etc/sysconfig/hardware gibt es ein Skript namens hwcfg2rules, dass die bisherige Konfiguration in udev-Regeln umschreibt. Funktioniert auch soweit, aber die Regeln werden in die bestehenden Dateien in /etc/udev/rules.d eingetragen und extra nochmal in einer der Datei 80-sysconfig.rules zusammengefasst. Die habe ich einfach verschoben und dann später gelöscht und jetzt ist alles wieder normal. Auch die Deaktivierung des rtc_cmos Moduls habe ich wieder aufgehoben und es funktioniert.
Da ich in den Regeln Reste von Hardware gefunden habe, die gar nicht mehr eingebaut bzw. angeschlossen ist, halte ich es nicht für einen Bug, sondern für Rückstände. Manche Hardware, z.B. eine alte analoge TV-Karte, habe ich schon seit mehr als einem Jahr nicht mehr. Ein Grafiktabeltt habe ich nur einmal verwendet, auch schon ein paar Monate her. Kein Wunder, das das Skript Mist gebaut hat.
An dieser Stelle nochmal vielen Dank für die Tipps!

Post Reply