Re: [RFC v2 06/17] media: Dynamically allocate the media device

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

 



On Mon, Aug 22, 2016 at 03:38:20PM +0300, Sakari Ailus wrote:
> Hi Hans,
> 
> On Mon, Aug 22, 2016 at 02:01:44PM +0200, Hans Verkuil wrote:
> > On 08/19/2016 12:23 PM, Sakari Ailus wrote:
> > > From: Sakari Ailus <sakari.ailus@xxxxxx>
> > > 
> > > Allow allocating the media device dynamically. As the struct media_device
> > > embeds struct media_devnode, the lifetime of that object is that same than
> > > that of the media_device.
> > > 
> > > Signed-off-by: Sakari Ailus <sakari.ailus@xxxxxxxxxxxxxxx>
> > > ---
> > >  drivers/media/media-device.c | 22 ++++++++++++++++++++++
> > >  include/media/media-device.h | 38 ++++++++++++++++++++++++++++++++++++++
> > >  2 files changed, 60 insertions(+)
> > > 
> > > diff --git a/drivers/media/media-device.c b/drivers/media/media-device.c
> > > index a431775..5a86d36 100644
> > > --- a/drivers/media/media-device.c
> > > +++ b/drivers/media/media-device.c
> > > @@ -544,7 +544,15 @@ static DEVICE_ATTR(model, S_IRUGO, show_model, NULL);
> > >  
> > >  static void media_device_release(struct media_devnode *devnode)
> > >  {
> > > +	struct media_device *mdev = to_media_device(devnode);
> > > +
> > > +	ida_destroy(&mdev->entity_internal_idx);
> > > +	mdev->entity_internal_idx_max = 0;
> > > +	media_entity_graph_walk_cleanup(&mdev->pm_count_walk);
> > > +	mutex_destroy(&mdev->graph_mutex);
> > >  	dev_dbg(devnode->parent, "Media device released\n");
> > > +
> > > +	kfree(mdev);
> > 
> > Doesn't this break bisect? mdev is now freed, but media_device_alloc isn't
> > called yet.
> > 
> > That doesn't seem right.
> 
> You're right.
> 
> media_device_release() actually may only be called for drivers that use
> media_device_init(). I'll fix that.

s/media_device_init/media_device_alloc/

-- 
Sakari Ailus
e-mail: sakari.ailus@xxxxxx	XMPP: sailus@xxxxxxxxxxxxxx
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux