On Thu, 9 Aug 2007, Markus Rechberger wrote: > On 8/9/07, Markus Rechberger <mrechberger@xxxxxxxxx> wrote: > > On 8/9/07, Steven Toth <stoth@xxxxxxxxxxxxx> wrote: > > > Markus Rechberger wrote: > > > > Following patch adds a rather primitive way to temporary lock dvb > > > > devicenodes, this can be useful for hybrid devices which use the > > > > video4linux framework for the analogue TV part and the dvb framework for > > > > digital TV if only one mode can be accessed at a time. > > > > > > > > I want to allow a user to use one mode at a time, so either DVB or V4L. > The device requires a different firmware for V4L and DVB also > different GPIO values and some special register writes. This code looks like it's full of race conditions. How do you prevent the dvb code and the v4l code from accessing the lock field at the same time? For example, in your em28xx code, what happens if the dvb devices is opened after the call to ->get_status on line 230 and before the call to ->dvb_lock on line 234? Why do you need to add locks to the frontend, dvr, demux, and net devices? Is it necessary to lock anything besides the frontend? Some devices, like the demux device, are multiple open. How do you know when to lock and unlock them? _______________________________________________ linux-dvb mailing list linux-dvb@xxxxxxxxxxx http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb