Juergen Orschiedt schrieb:
On Monday 13 March 2006 21:55, Johannes Stezenbach wrote:
On Mon, Mar 13, 2006, Ole Reinartz wrote:
I'm struggling to automate the loading of saa7134-dvb for my Avermedia
777. I'm using Jose Alberto Reguero's patch to get the 777 working, and
it is working well. However, whenever the system starts up, it detects
the card and loads the saa7134 module, but not the saa7134-dvb. After I
modprobe this module, everything is ok.
Is that working automatically at someones system? How can that be done?
Now I searched the source for a reason and found out that someone
(probably Gerd Knorr himself) added a mechanism to load the saa7134-dvb
from the saa7134 whenever that detects a dvb- card.
The saa7134-dvb is dependent on saa7134, so it cannot be loaded while
the saa7134 itself is being loaded. So the code registers a notifier to
get notified after it got 'live' (i.e. its state changed to
MODULE_STATE_LIVE) I guess. And this notifier never gets called.
Looking in module.c (of kernel 2.6.15, which is the kernel I use) I find
that in sys_init_module() the notification mechanism is called only
before the module actually gets initialised, but not after that. That
confuses me a bit. Does someone know how this is going to work? Can the
module somehow act at the time it got 'live'?
Well, I reported a bug (modprobe saa7134 deadlocked) which
lead to some discussion on lkml and finally Gerd's changes.
I suggest you look up the date of Gerd's change from the
hg or cvs history, and then search for the lkml discussion
around that time. Probably a piece of code from the module
notification stuff went missing. It would be nice to get
this fixed.
I used modprobe.d/tv config file to work around this issue:
install saa7134 /sbin/modprobe --first-time --ignore-install saa7134 &&
{ /sbin/modprobe saa7134-dvb && /sbin/modprobe saa7134-alsa || :; }
Thanks Juergen, nice trick. Will keep that in mind. But first I want to
find out wether I can fix this in the kernel (or the driver).
Ole
_______________________________________________
linux-dvb@xxxxxxxxxxx
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb