On Friday, April 15, 2011, Mike Frysinger wrote: > On Fri, Apr 15, 2011 at 12:29, Pavel Machek wrote: > >> > > I believe the code is correct as is. > >> > > >> > that isnt what the code / documentation says. unless i'm reading them > >> > wrong, both seem to indicate that the proposed patch is what we > >> > actually want. > >> > >> The existing code is correct but it isn't optimal. > >> > >> wmb() and rmb() are heavy-duty operations, and you don't want to call > >> them when they aren't needed. That's exactly what smp_wmb() and > >> smp_rmb() are for -- they call wmb() and rmb(), but only in SMP > >> kernels. > >> > >> Unless you need to synchronize with another processor (not necessarily > >> a CPU, it could be something embedded within a device), you should > >> always use smp_wmb() and smp_rmb() rather than wmb() and rmb(). > > > > Maybe; but this code is not performance critical and I believe being > > obvious here is better... > > isnt it though ? especially when we talk about suspending/resuming on > embedded systems to get more savings over just cpu idle ? we want > that latency to be as low as possible. I agree, we can switch the freezer to smp_ barriers, but not for the reason you gave before. :-) Care to repost the patch with a suitable changelog? Rafael _______________________________________________ linux-pm mailing list linux-pm@xxxxxxxxxxxxxxxxxxxxxxxxxx https://lists.linux-foundation.org/mailman/listinfo/linux-pm