Re: Coordinating concurrent users of v4l2 devices

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]



Ronald Bultje <rbultje@xxxxxxxxxxxxxxxxxxx> writes:

> Hi Gerd,
> 
> On Mon, 2003-01-13 at 11:40, Gerd Knorr wrote:
> > >  > Another way would be to have some kind of O_EXCL flag, but at ioctl
> > >  > level.  So nxtvepg could set that for the S_FREQUENCY ioctl and the
> > >  > driver would refuse the switch with -EBUSY if there is more than one
> > >  > file handle open at that time.
> 
> How is this in effect different from the O_EXCL solution?

You can do basically the same with it.  With some O_EXCL-like flag at
ioctl level you just set that flag when doing the ioctl, with
open(O_EXCL) support you would have to close/reopen the device with
O_EXCL set/cleared depending on what you want (as shown in my pseudo
code below).  Just a different way.

open(O_EXCL) is aleady used by other drivers, thats why I would
prefeare it, even through it requires the application to some more
system calls.

> > open(/dev/vbi,0)
> > [ read vbi data ]
> > close(/dev/vbi)
> > 
> > if (open(/dev/vbi,O_EXCL)) {
> >   [ switch station ]
> >   close(/dev/vbi)
> > }
> > 
> > open(/dev/vbi,0)
> > [ read more vbi data ]
> > close(/dev/vbi)
> > 
> > Comments?
> 
> Urm... Would this also go for video (as part of the API), or only for
> vbi? Basically, this is bloated, imho.

Look at the floppy driver.  Having O_EXCL support is just a few lines
in the drivers open handler.

  Gerd

-- 
Weil die späten Diskussionen nicht mal mehr den Rotwein lohnen.
				-- Wacholder in "Melanie"





[Index of Archives]     [Linux DVB]     [Video Disk Recorder]     [Asterisk]     [Photo]     [DCCP]     [Netdev]     [Xorg]     [Util Linux NG]     [Xfree86]     [Free Photo Albums]     [Fedora Users]     [Fedora Women]     [ALSA Users]     [ALSA Devel]     [Linux USB]

Powered by Linux