Messages in this thread | | | Date | Wed, 20 May 2015 15:45:05 +0200 | From | Pavel Machek <> | Subject | Re: [PATCH] PM / sleep: cancel the synchronous restriction of pm-trace |
| |
> >> -#define TRACE_DEVICE(dev) do { \ > >> +#define TRACE_DEVICE_START(dev) do { \ > >> if (pm_trace_enabled) \ > >> + mutex_lock(&pt_mutex); \ > >> set_trace_device(dev); \ > >> } while(0) > >> > >> +#define TRACE_DEVICE_END() \ > >> +do { \ > >> + if (pm_trace_enabled) { \ > >> + mutex_unlock(&pt_mutex); \ > >> + } \ > >> +} while (0) > >> + > > Won't this serialize the whole thing again? > Yes, this mutex lock will ultimately serialize all PM operations. But, all device's PM operations are asynchronous each other at first. So, the PM operation order of all devices will vary in multiple suspend/resume. This can be similar to real to an extreme, and helpful to debugging. >
I believe the tradeoff here is wrong. Just keep PM_TRACE simple, and use something else for a real tricky failures.. Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
| |