lkml.org 
[lkml]   [2017]   [Oct]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [RFC PATCH v4 7/8] pwm: Add dummy pwmchip for orphan pwms
Hi,

On Tue, Oct 17, 2017 at 02:40:31PM +0200, Thierry Reding wrote:
> On Tue, Oct 17, 2017 at 06:16:23PM +0800, Jeffy Chen wrote:
> > When the pwm driver is unbound while the pwm is still requested, the
> > pwm core would not actually remove the pwmchip(return -EBUSY instead).
> >
> > So it would hold some references to the invalid resources(e.g. pwmchip).
> >
> > And the customer who requested the pwm would have those references too,
> > and may crash the kernel when trying to access them later.
> >
> > Add a dummy pwmchip, and assign orphan pwms to it to avoid that.
> >
> > Signed-off-by: Jeffy Chen <jeffy.chen@rock-chips.com>
> > ---
> >
> > Changes in v4:
> > Fix compile warning.
> >
> > Changes in v3:
> > Assign orphan pwms to dummy pwmchip instead of adding device link in the
> > customer driver.
>
> What happened to this? Device links were specifically designed to avoid
> situations like these.

I think Jeffy came up with this as an odd response to my suggestion on
v2 that we could just handle the device links in the PWM core. I don't
fully understand why the complete change in direction...

BTW, since you seem to have an opinion about device links: is it
expected that all consumer drivers will make explicit calls to
device_link_add()? I thought this should be avoided, if possible (e.g.,
this can be handled in pwm_get()).

> A dummy PWM chip doesn't seem like the right solution to this.

Agreed.

Brian

\
 
 \ /
  Last update: 2017-10-17 19:04    [W:0.082 / U:0.072 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site