lkml.org 
[lkml]   [2015]   [Oct]   [8]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH 2/2] PM / sleep: prohibit devices probing during suspend/hibernation
Date
On Thursday, October 08, 2015 03:20:08 PM Alan Stern wrote:
> On Thu, 8 Oct 2015, Grygorii Strashko wrote:
>
> > >> /**
> > >> + * device_defer_all_probes() - Enable/disable probing of devices
> > >> + * @enable: Enable/disable probing of devices
> > >> + *
> > >> + * if @enable = true
> > >> + * It will disable probing of devices and defer their probes.
> > >> + * otherwise
> > >> + * It will restore normal behavior and trigger re-probing of deferred
> > >> + * devices.
> > >> + */
> > >> +void device_defer_all_probes(bool enable)
> > >> +{
> > >> + defer_all_probes = enable;
> > >> + if (enable)
> > >> + /* sync with probes to avoid any races. */
> > >> + wait_for_device_probe();
> >
> > ^ pls, pay attention on above code line
> >
> > >> + else
> > >> + driver_deferred_probe_trigger();
> > >> +}
> > >
> > > Some people might prefer to see two separate functions, an enable
> > > routine and a disable routine. I don't much care.
> >
> > May be. Should I change it?
>
> It would then be more in line with functions like
> pm_runtime_set_{active|suspended} or pm_runtime_[dont_]use_autosuspend.

Also it would be cleaner code without conditionals:

enable:
defer_all_probes = true;
wait_for_device_probe();

disable:
defer_all_probes = false;
driver_deferred_probe_trigger();

Cleaner, no?

Thanks,
Rafael



\
 
 \ /
  Last update: 2015-10-08 22:41    [W:0.058 / U:0.036 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site