lkml.org 
[lkml]   [2009]   [Oct]   [5]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] drivers-core: nullify private pointer on device-release
On Thu, 1 Oct 2009, Greg KH wrote:

> On Thu, Oct 01, 2009 at 03:45:56PM +0200, Guennadi Liakhovetski wrote:
> > On Thu, 1 Oct 2009, Greg KH wrote:
> >
> > > On Thu, Oct 01, 2009 at 10:02:08AM +0200, Guennadi Liakhovetski wrote:
> > > > Device structures can be reused over multiple device_add / device_release
> > > > cycles.
> > >
> > > They shouldn't be as they should be dynamic, not static.
> >
> > Should they? I'm pretty sure this is not the first time this comes up -
> > there are several drivers and / or subsystems, that re-use driver objects.
>
> Then those drivers and subsystems should be fixed, as that is incorrect.
>
> > But finding in mail archives wouldn't be very easy. And it worked until
> > now - why should we break it?
>
> I would argue that this code was always broken.
> When did this problem show up for you?

Since commit b4028437876866aba4747a655ede00f892089e14

> > > What device is having this problem?
> >
> > My problem case is the soc-camera framework. There device struct is
> > embedded into the video client object, which are kept as long as the
> > driver is loaded.
>
> struct device is a dynamic structure, it is supposed to be able to be
> freed when the last reference goes away. Static struct device usage is
> wrong. It sounds like the video client object code is incorrect, please
> fix it.

Thanks
Guennadi
---
Guennadi Liakhovetski, Ph.D.
Freelance Open-Source Software Developer
http://www.open-technology.de/

\
 
 \ /
  Last update: 2009-10-05 10:15    [from the cache]
©2003-2011 Jasper Spaans