Re: [RFC/PATCH] sysfs'ify video4linux

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



On Wed, Jul 16, 2003 at 02:08:00PM -0700, Greg KH wrote:
> On Wed, Jul 16, 2003 at 10:20:18PM +0200, Gerd Knorr wrote:
> > Yes, it is allocated/freed by the driver, most seem to simply include
> > one ore more "struct video_device" somewhere in the per-device struct.
> 
> So you CAN NOT just blindly put a kobject (meaning a class_device)
> structure inside of there.

Why not ...

> > which want add private properties and rely on video_device->priv
> > for finding the per-device data.  Problem isn't solved but justed
> > moved to the next corner ...
> 
> No, just have the video drivers have a release callback to do the
> freeing.

... if a ->release() callback is required anyway to fix it?  I see two
ways to handle it:

  (1) mandatory ->release() callback, drivers must make sure the stuff
      is not freed before the callback was called.  In that case the
      class_device can be left embedded inside the drivers provate
      structs.
  (2) optional ->release() callback (for those drivers which want add
      private attributes), "struct video_device" must be moved out of
      the drivers private structs then and released in a new function
      (which also calls the drivers ->release callback if present).
      Should probably also be allocated by videodev.c for symmetry.

Both approaches require touching all v4l drivers in non-trivial ways
through, not sure whenever it is a good idea to do that now.  Any chance
to get that in before 2.6.0?  Or should I better make that change in
2.7.x and live with /proc for the time being?

  Gerd

-- 
sigfault




[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