Hallo Johannes,
ich nutze den Fedora Kernel (http://download.fedoraproject.org/pub/fedora/linux/updates/18/SRPMS/kernel-3...). Dieser enthält einige Patches, aber ich konnte auf die Schnelle nichts im Bereich v4l2_ctrl_add_handler() finden.
v4l2_ctrl_add_handler { ... mutex_lock(add->lock); ... ret = handler_new_ref(hdl, ctrl); ... mutex_unlock(add->lock); return ret; }
Die Frage ist noch, hängen "DEADLOCK" und "NULL pointer dereference" zusammen oder sind das zwei verschiedene Sachen?
Da muss ich wohl mal einen eigenen Kernel bauen, mal sehen was der so macht.
Viele Grüße Rico
On 04.03.2013 17:27, Johannes Steinmetz wrote:
Hallo Rico und hallo Liste! Ich bin neu hier und habe Deinen Thread aus dem Archiv gefischt, also nicht ärgern, wenn hier kein anständiger Reply-Header dran klebt.
Zu Deinen Fragen:
Nach deinem Kerntrace zeigt, dass beim proben Deiner TV-Karte aus dem modul cx8800 heraus (cx8800_initdev) v4l2_ctrl_add_handler aufgerufen wird.
In dieser wird angeblich ein lock gegriffen: but task is already holding lock: …(hdl->lock){+.+...}…v4l2_ctrl_add_handler+0x88/0xf0
weiter unten ruft die funktion dann find_ref_lock mit diesem hdl parameter, womit das lock dann noch mal gegriffen werden soll. Das ist dann ein DEADLOCK, da das lock nicht gegriffen werden kann solage es geriffen ist ...
Leier kann ich in meinem code nicht erkennen, das das lock das erste mal gegriffen werden soll. Ich habe hier den 3.8 getaggten code aus dem kernel git und dort wird eigentlich acht gegeben, dass das hdl->lock nicht 2 mal gegriffen wird. Ich vermute der 3.8.1-201 Code von Fedora enthält in v4l2_ctrl_add_handler einen patch der einen bug enthält.
Hast Du Deinen Kern selbst gebaut? Wenn ja, dann sieh Dir mal die v4l2_ctrl_add_handler in <kernelverz>/drivers/media/v4l2-core/v4l2-device.c an, ob du da ein greifen des locks endeckst.
Wenn Du keinen selbstgebauten kern hast, dann kommst Du wohl nicht drum herum dein TV-Karten Modul so lange zu blacklisten, bis es ein funtionierendes Kernpaket gibt, auch wenn der Fehler gar nicht an dem modul liegt höchstwahrscheinlich...
Ich weiß leider nicht wo man den Fedora gepatchten code herbekommt (ich hab auch nicht gesucht... :-)
Soweit erstmal viele Grüße, Johannes
Hi,
seit einigen Kernelversionen bekomme ich sporadisch "BUG: unable to handle kernel NULL pointer dereference at 00000000000000b8". Dies passiert meist nur beim ersten Start nach dem Update des Kernel. Wenn das passiert, kann gnome nicht gestartet werden und es hilft nur noch ein Reset des Rechners. Ein Ausschnitt aus /var/log/messages ist im Anhang. Mit dem Kernel 3.8.1-201 von Fedora 18 ist mir jedoch noch kein normaler Start geglückt. Das System ist auf dem aktuellen Stand.
Ich vermute, dass es an der TV-Karte liegt. Ich würde diese jedoch gern weiterhin nutzen wollen und nur ungern aus dem PC ausbauen wollen.
Hat jemand eine Idee woran das liegen könnte und wie ich das Problem beseitigen kann?
Viele Grüße Rico
Lug-dd maillist - Lug-dd@mailman.schlittermann.de https://ssl.schlittermann.de/mailman/listinfo/lug-dd