[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <2226940.FhLLx52rcO@vostro.rjw.lan>
Date: Mon, 26 Jan 2015 14:44:15 +0100
From: "Rafael J. Wysocki" <rjw@...ysocki.net>
To: "Fu, Zhonghui" <zhonghui.fu@...ux.intel.com>
Cc: len.brown@...el.com, pavel@....cz,
Greg Kroah-Hartman <gregkh@...uxfoundation.org>,
linux-pm@...r.kernel.org,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] PM/Trace: get rid of synchronous resume limit during PM trace
On Monday, January 26, 2015 03:59:59 PM Fu, Zhonghui wrote:
>
> This is a incorrect patch , please ignore it.
Of course it is incorrect.
If it "fixes" anything for you, this means you need to reorder devices in dpm_list
on the given system.
> On 2015/1/26 13:07, Fu, Zhonghui wrote:
> > From f9c841d1f943d81b5ab0aac7483e794a7f966296 Mon Sep 17 00:00:00 2001
> > From: Zhonghui Fu <zhonghui.fu@...ux.intel.com>
> > Date: Mon, 26 Jan 2015 11:27:08 +0800
> > Subject: [PATCH] PM/Trace: get rid of synchronous resume limit during PM trace
> >
> > There are some kind of dependency between devices in some
> > hardware platforms. So, asynchronous resuming devices may
> > hang system due to wrong resume order. As a result, should
> > not fore synchronously resuming devices during tracing
> > PM events.
> >
> > Signed-off-by: Zhonghui Fu <zhonghui.fu@...ux.intel.com>
> > ---
> > drivers/base/power/main.c | 3 +--
> > include/linux/resume-trace.h | 7 -------
> > 2 files changed, 1 insertions(+), 9 deletions(-)
> >
> > diff --git a/drivers/base/power/main.c b/drivers/base/power/main.c
> > index 9717d5f..5df148b 100644
> > --- a/drivers/base/power/main.c
> > +++ b/drivers/base/power/main.c
> > @@ -517,8 +517,7 @@ static int device_resume_noirq(struct device *dev, pm_message_t state, bool asyn
> >
> > static bool is_async(struct device *dev)
> > {
> > - return dev->power.async_suspend && pm_async_enabled
> > - && !pm_trace_is_enabled();
> > + return dev->power.async_suspend && pm_async_enabled;
> > }
> >
> > static void async_resume_noirq(void *data, async_cookie_t cookie)
> > diff --git a/include/linux/resume-trace.h b/include/linux/resume-trace.h
> > index f31db23..fd0866e 100644
> > --- a/include/linux/resume-trace.h
> > +++ b/include/linux/resume-trace.h
> > @@ -7,11 +7,6 @@
> >
> > extern int pm_trace_enabled;
> >
> > -static inline int pm_trace_is_enabled(void)
> > -{
> > - return pm_trace_enabled;
> > -}
> > -
> > struct device;
> > extern void set_trace_device(struct device *);
> > extern void generate_resume_trace(const void *tracedata, unsigned int user);
> > @@ -24,8 +19,6 @@ extern int show_trace_dev_match(char *buf, size_t size);
> >
> > #else
> >
> > -static inline int pm_trace_is_enabled(void) { return 0; }
> > -
> > #define TRACE_DEVICE(dev) do { } while (0)
> > #define TRACE_RESUME(dev) do { } while (0)
> >
> > -- 1.7.1
> >
>
--
I speak only for myself.
Rafael J. Wysocki, Intel Open Source Technology Center.
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists